Releases: scalameta/scalameta
Releases · scalameta/scalameta
Scalameta v4.7.1
Pull Requests
- chore: Test ExpectSuite under Scala 2.13 (#2995) @tgodzik
- ScalametaParser: refactor condExprInParens (#2991) @kitbellew
- bugfix: Save warnings to semanticdb (#2996) @tgodzik
- ScalametaParser: split expr into several methods (#2992) @kitbellew
- Trees: more shared branches (Function, ForLike) (#2994) @kitbellew
Scalameta v4.7.0
Features
AST macro changes to allow replacing one or more fields with another:
- ast: allow replacing multiple fields with a single (#2982) @kitbellew
- ast: support ellipses past rank 2 (#2980) @kitbellew
- branch: define
unapply
using vals and defs (#2978) @kitbellew - ast: add deprecation annotation to replaced fields (#2960) @kitbellew
- ast: allow specifying a ctor in replacedField (#2934) @kitbellew
- ast: allow replacing old fields with new ones (#2917) @kitbellew
- ast: check annotations use current major version (#2914) @kitbellew
- SBT: expose current build version via BuildInfo (#2913) @kitbellew
- ast: deprecate unapply if we have modified fields (#2916) @kitbellew
- ast: add a private
fullCopy
method (#2915) @kitbellew - ast: disallow multiple parameter lists (#2910) @kitbellew
- Trees: allow Seq fields instead of just List (#2907) @kitbellew
- Lift: add conversions between List and Tree (#2912) @kitbellew
- ast: deannotate definition types (#2911) @kitbellew
- ast: obtain copy args from params (#2909) @kitbellew
- ast: do not make deprecated apply final (#2908) @kitbellew
- NamerMacros: separate copy from field stubs (#2906) @kitbellew
- ast: add convenience methods
asVal{Decl,Defn}
(#2905) @kitbellew - ast: implement addDeprecated{Apply,Copy} methods (#2904) @kitbellew
- replace binaryCompatVar with a field annotation and full unapply (#2889) @kitbellew
Enclose arguments and parameters into clauses or clause groups:
- Trees: param clause group in Def/Given/Extension (#2987) @kitbellew
- Trees: check Def/Macro for valid param clauses (#2984) @kitbellew
- ScalametaParser: split param clause methods (#2983) @kitbellew
- ScalametaParser: Repeated check of ParamClause (#2981) @kitbellew
- Trees: use Term.ParamClause in Term.FunctionTerm (#2949) @kitbellew
- Trees: use Type.FuncParamClause in Type.FunctionType (#2948) @kitbellew
- Trees: use Pat.ArgClause, not List[Pat] (#2962) @kitbellew
- ScalametaParser: remove dup ParamsType from Param (#2961) @kitbellew
- Trees: use Term.ArgClause, not List[Term] (#2942) @kitbellew
- Trees: improve detection of
mod
for ParamClause (#2939) @kitbellew - Trees: use Type.ArgClause, not List[Type] (#2927) @kitbellew
- ScalametaParser: simplify convertToParam (#2933) @kitbellew
- TreeSyntax: improve parameter printing (#2937) @kitbellew
- Trees: retag replaced fields 4.5.13 -> 4.6.0 (#2930) @kitbellew
- Trees: use Term.ParamClause, not List[Term.Param] (#2926) @kitbellew
- ScalametaParser: rename paramXxx to termParamXxx (#2924) @kitbellew
- ScalametaParser: params only Implicit or Using (#2923) @kitbellew
- Trees: use Type.Params, not List[Param] (#2870) @kitbellew
Adding a number of tree interfaces to indicate common traits:
- Trees: add Tree.WithBody to a few additional trees (#2986) @kitbellew
- Trees: derive additional from Member.Xxx branches (#2977) @kitbellew
- Trees: implement various shared branches (#2968) @kitbellew
- Trees: add a Tuple branch to base all Tuples on (#2935) @kitbellew
Other features:
- Auto publish parser js to npm (#2966) @tanishiking
- feature: Allow fewer braces for Scala 3.3.x (#2958) @tgodzik
- Trees: add Name.Placeholder, use as appropriate (#2943) @kitbellew
- TreeSyntax: don't print Name.Anonymous (#2938) @kitbellew
Bug fixes
- ScalametaParser: shared mtd for Term.Function body (#2975) @kitbellew
- ScalametaParser: use expr in implicit closure (#2965) @kitbellew
- bugfix: Make AnonymousLambda contructable (#2918) @tgodzik
- bugfix: Fix issues with fewer braces and partial functions (#2901) @tgodzik
Fix tree positions:
- ScalametaParser: pass startPos to XxxTypeRest (#2974) @kitbellew
- ScalametaParser: fix positions in matchClause (#2973) @kitbellew
- ScalametaParser: fix position bugs (#2971) @kitbellew
- Add position tests for enclosed expressions (#2969) @kitbellew
- ScalametaParser: bug fix, restore
(
pos in infix (#2951) @kitbellew - ScalametaParser: exclude parens from simple expr (#2941) @kitbellew
Miscellaneous
- Token/Position: add isEmpty convenience method (#2990) @kitbellew
- Tests: minor refactor (#2985) @kitbellew
- TreeSyntax: refactor Block, remove trailing spaces (#2976) @kitbellew
- ScalametaParser: simplify condExpr (#2972) @kitbellew
- ScalametaParser: remove duplicate typeIndentedOpt (#2970) @kitbellew
- ScalametaParser: rename
alt
param toifEmpty
(#2967) @kitbellew - ScalametaParser: add makeTuple handling of single (#2964) @kitbellew
- Mima: allow reverse missing method in branch, too (#2950) @kitbellew
- Trees: use common Tuple checks in all tuples (#2946) @kitbellew
- TreeSyntax: simplify Term.FunctionTerm (#2947) @kitbellew
- MinorDottySuite: add tests with
using
in Init (#2945) @kitbellew - ScalametaParser: refactor argument expr parsing (#2944) @kitbellew
- Tests: pass implicit munit.Location (#2940) @kitbellew
- ScalametaParser: make reduce() into an implicit (#2936) @kitbellew
- ScalametaParser: move some methods to companion (#2932) @kitbellew
- ParseSuite: pass implicit dialect to parsers (#2928) @kitbellew
- chore: Unignore TraversalOrder test after recent fixes (#2922) @tgodzik
- SbtSuite: cosmetic, reformat the test string (#2920) @kitbellew
- TreeStructure: don't add extra parens for Lit.Unit (#2921) @kitbellew
- chore: Add support for Scala 2.13.10 (#2903) @tgodzik
Dependency updates
- Update nscplugin, sbt-scala-native, ... to 0.4.9 (#2988) @scalameta-bot
- Update sbt-ci-release to 1.5.11 (#2953) @scalameta-bot
- Update scalafmt-core to 3.6.1 (#2956) @scalameta-bot
- Update sbt-assembly to 2.0.0 (#2952) @scalameta-bot
- Update sbt-mdoc to 2.3.6 (#2899) @scalameta-bot
- Update sbt-mdoc to 2.3.5 (#2897) @scalameta-bot
Scalameta v4.6.0
Features
- Handling type wildcards and lambda placeholders (#2807)
- Trees: add AnonymousLambda (#2884) @kitbellew
- ScalametaParser: constrain match type pattern (#2886) @kitbellew
- Dialect: add allowStarAsTypePlaceholder (#2885) @kitbellew
- Trees: split off Type.Wildcard from Placeholder (#2815) @kitbellew
- Trees: derive Mod.{Co,Contra}variant from Variant (#2855) @kitbellew
- Add test with underscores in match type (#2842) @kitbellew
- ScalametaParser: return Type in paramOrType (#2838) @kitbellew
- Dialect: add allowUnderscoreAsTypePlaceholder (#2811) @kitbellew
- Dialect: add allowQuestionMarkAsTypeWildcard (#2810) @kitbellew
- Add specific scala3 dialects
- refactor: Rename Scala3x to Scala3Future (#2896) @tgodzik
- Dialect: add scala3x, move type placeholder there (#2895) @kitbellew
- Dialect: add intermediate scala3 dialects (#2809) @kitbellew
- feat: Add support for LambdaType (corresponds to Scala3 HKTypeLambda) (#2867) @tanishiking
- feature: Add support for fewer braces (#2848) @tgodzik
- expanded quasiquote support
- ScalametaParser: param ellipses in extension group (#2849) @kitbellew
- SuccessSuite: add a few tests with triple dots (#2852) @kitbellew
- RoundtripSuite: match templates without extends (#2850) @kitbellew
- ScalametaParser: in param, pass Mod tree, not flag (#2837) @kitbellew
- ScalametaParser: quasi() returns T with Quasi (#2840) @kitbellew
- Documentation: delete obsolete quasiquotes.md (#2845) @kitbellew
- Documentation: amend quasiquotes for templates (#2844) @kitbellew
- Add test with quasiquote template matching (#2843) @kitbellew
- Trees: become[] to declare base type, not Quasi (#2839) @kitbellew
- ScalametaParser: minor refactor in quasi handling (#2834) @kitbellew
- ScalametaParser: minor refactor in params parsing (#2833) @kitbellew
- Mima: remove old dialect exclusions (#2816) @kitbellew
- Trees: mark all stats having mods with a trait (#2806) @kitbellew
Bug fixes
- bugfix: Don't allow open for enum cases (#2866) @tgodzik
- PlaceholderChecks: exclude Quasi, fix Tuple/Init (#2868) @kitbellew
- TreeSyntax: fix floats and doubles (#2862) @kitbellew
- bugfix: Allow refinement after with in type (#2854) @tgodzik
- fix: allow export in extesion block (#2836) @dos65
- bugfix: Show better error when no
{
is before case (#2830) @tgodzik - Avoid ZipException when loading classpath (#2805) @daddykotex
ast/macros refactoring
- ast: refactor getting and setting fields (#2894) @kitbellew
- ast: allow extra copy methods to be defined (#2891) @kitbellew
- Transverser: don't extract/bind fields via unapply (#2892) @kitbellew
- ast: refactor unapply, copy and privateCopy (#2890) @kitbellew
- Liftables: refactor; differentiate matcher body (#2893) @kitbellew
- ast: refactor getter/setter (#2878) @kitbellew
- ast: refactor unapply generation (#2877) @kitbellew
- ast: refactor version parsing (#2876) @kitbellew
- Trees: move Object/Equals methods to ast macro (#2864) @kitbellew
- ast/macros: ignore Quasi types in nonEmpty/unapply (#2865) @kitbellew
- SyntacticTrees: rename, use tailrec, no full pkg (#2858) @kitbellew
- Liftables: extract nested defs into class scope (#2851) @kitbellew
- adt/Reflection: extract checking hierarchy method (#2846) @kitbellew
Miscellaneous
- Trees: use a short scala.meta -> sm alias (#2879) @kitbellew
- Mima: ignore new methods in trees as sealed (#2872) @kitbellew
- Show: put everything under
private[meta]
(#2875) @kitbellew - SuccessSuite: use assertTrees/checkTrees (#2871) @kitbellew
- Add a few type underscore tests (#2860) @kitbellew
- SuccessSuite: add double-ellipsis args tests (#2859) @kitbellew
- Add or dialect-duplicate some Placeholder tests (#2856) @kitbellew
- Trees: shorten explicit scala.meta.Type to smType (#2847) @kitbellew
- Add test failing Type.Typed field checks (#2835) @kitbellew
- TreeSyntax: generalize params syntax rules (#2828) @kitbellew
- Quasiquotes Tests: use assertEquals when possible (#2827) @kitbellew
- SuccessSuite: add test with non-empty tparams (#2826) @kitbellew
- ScalametaParser: use single-arg atPos when beg=end (#2824) @kitbellew
- ScalametaParser: remove isXML, unused (#2822) @kitbellew
- ScalametaParser: make pattern() tail-recursive (#2821) @kitbellew
- Origin: move pos/tokens from InternalTrees (#2819) @kitbellew
- CommunityDottySuite: use correct dialect to parse (#2817) @kitbellew
- CommunityDottySuite: compute string path once (#2818) @kitbellew
- Dialect: order dialects explicitly (#2814) @kitbellew
- Change implicit classes to derive from AnyVal (#2812) @kitbellew
- Mima: shorten exclude filter declarations (#2813) @kitbellew
- Use assert rather than unapply in tests (#2808) @kitbellew
Dependency updates
- Update sbt-mdoc to 2.3.4 (#2887) @scalameta-bot
- Update sbt-mima-plugin to 1.1.1 (#2883) @scalameta-bot
- Add Scala 2.13.9 support (#2825) @dos65
- chore: Add support for Scala 2.12.17 (#2861) @tgodzik
- Update nscplugin, sbt-scala-native, ... to 0.4.7 (#2831) @scalameta-bot
Scalameta v4.5.13
Pull Requests
- Dialect: remove equals/hashCode overrides (#2804) @kitbellew
- Dialect: implement deeper dialect equality check (#2801) @kitbellew
- Dialect: allowAsRenames to allowAsForImportRename (#2800) @kitbellew
- bugfix: Allow single using identifier (#2803) @tgodzik
- Update scalafmt-core to 3.5.9 (#2802) @scalameta-bot
Scalameta v4.5.12
Pull Requests
- Update sbt-mdoc to 2.3.3 (#2798) @scalameta-bot
- ScalametaParser: allow
using
even in scala 2 (#2796) @kitbellew
Scalameta v4.5.11
Pull Requests
- try to fix release workflow (#2795) @dos65
- chore: Revert changes for sbt 1.7.x (#2794) @tgodzik
- Set xmx to lower value to avoid OOMs (#2793) @tgodzik
- chore: Try and tweak CI opts (#2792) @tgodzik
- Emit local symbol occurrence for structural type access (#2790) @olafurpg
- ScalametaParser: no double autopos in modifier (#2791) @kitbellew
- bugfix: Only set latest 2.13 and 2.12 versions for Native/JS projects (#2789) @tgodzik
- release command (#2784) @eed3si9n
- bugfix: Manually skip newlines after soft keywords (#2787) @tgodzik
- chore: Update sbt to version 1.7.1 (#2783) @tgodzik
- Update sourcecode to 0.3.0 (#2781) @scalameta-bot
- ScalametaParser: refactor macro ident matching (#2780) @kitbellew
- bugfix: Make sure that the macro ident is not just $ (#2779) @tgodzik
- Update nscplugin, sbt-scala-native, ... to 0.4.5 (#2778) @scalameta-bot
- Update sbt-unidoc to 0.5.0 (#2775) @scalameta-bot
- fix: backpublish fixes (#2773) @dos65
- chore: Update to Scala 2.12.16 (#2771) @tgodzik
- chore: Remove ScalaCLA since it's currently not needed (#2772) @tgodzik
- Update sbt-mdoc to 2.3.2 (#2768) @scalameta-bot
- Update compilerplugin, protoc-gen-scala, ... to 0.11.11 (#2765) @scalameta-bot
- Update sourcecode to 0.2.8 (#2764) @scalameta-bot
- Update geny to 0.7.1 (#2763) @scalameta-bot
- Update sbt-unidoc to 0.4.3 (#2762) @scalameta-bot
- Update sbt-mima-plugin to 1.1.0 (#2766) @scalameta-bot
- Update sbt-scala-native-crossproject, ... to 1.2.0 (#2767) @scalameta-bot
- Update scalafmt-core to 3.5.8 (#2769) @scalameta-bot
Scalameta v4.5.9
Bug fixes
- ScalametaParser: placeholder is not an anon func (#2761) @kitbellew
Scalameta v4.5.8
Scalameta v4.5.7
Bug fixes
- PlaceholderChecks: add ApplyType and New (#2754) @kitbellew
- fix: Do not crash when scalameta hit BoundedWildcardType (#2752) @tanishiking
Dependency updates
- Update scalafmt-core to 3.5.3 (#2753) @scala-steward
Scalameta v4.5.6
Bug fixes
- ScalametaParser: fix paren positions in infix expr (#2749) @kitbellew
- ScalametaParser: no tuple if infix rhs in braces (#2747) @kitbellew
Other changes
- ScalametaParser: infix Lhs == Rhs, hence use one (#2748) @kitbellew
- ScalametaParser: set positions in makeTuple (#2746) @kitbellew
- {BasicPosition,Syntactic}Suite: extra infix tests (#2745) @kitbellew