Skip to content

Lift-mapper with Scala 2.13 support - #1982

Merged
farmdawgnation merged 4 commits into
lift:masterfrom
lvitaly:feature/lift-mapper-scala-2.13
Jun 11, 2020
Merged

Lift-mapper with Scala 2.13 support#1982
farmdawgnation merged 4 commits into
lift:masterfrom
lvitaly:feature/lift-mapper-scala-2.13

Conversation

@lvitaly

@lvitaly lvitaly commented May 31, 2020

Copy link
Copy Markdown
Contributor
  • Lift-mapper was updated for supporting Scala 2.13
  • All deprecation warnings of compiler were fixed
  • Scala versions were bumped to 2.12.11 and 2.13.2
  • Sbt version was bumped to 1.3.12

lvitaly added 3 commits June 1, 2020 00:17
- scala versions were bumped to 2.12.11 and 2.13.2
- sbt version was bumped to 1.3.12
- specs2 was updated to 4.9.4
- scalatest was updated to 3.1.2
- apacheds dependency was removed as not used
case Some(join) =>
join
}
}(join => join)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

What tests is this block covered under?

}

def apply[Q <% FieldType](v: Q): OwnerType = {
def apply[Q](v: Q)(implicit implFn: Q => FieldType): OwnerType = {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Why is the implicit required in this new version?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Q <% FieldType is a view bound syntax which is deprecated in Scala 2.13.x

  • View bounds deprecated
    • Deprecated: A <% B (#6500)
    • Use instead: (implicit ev: A => B)

https://github.com/scala/scala/releases/tag/v2.13.0

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Ah, good to know

_outerField: MappedField[JoinTypeA, OuterMapper],
_innerField: MappedField[JoinTypeA, InnerMapper],
qp: Zoom*
)(implicit ev: Zoom => QueryParam[InnerMapper]): InThing[OuterMapper] = {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Looks like we've also added implicits here that I'm not totally clear on the use of.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

As previously described, the deprecated view bound syntax was replaced by implicit function.

  • View bounds deprecated
    • Deprecated: A <% B (#6500)
    • Use instead: (implicit ev: A => B)

https://github.com/scala/scala/releases/tag/v2.13.0

@farmdawgnation

Copy link
Copy Markdown
Member

Sorry it took so long for me to get around to this. Personal life has been a bit of a mess lately so I appreciate the patience. I've left some questions about some implicits I saw added in particular. Otherwise things look Fine™, but I'm not a lift-mapper expert so I'm not sure I'm the best judge. I'd love to know how confident you are that the changes you made are covered by tests.

@farmdawgnation farmdawgnation left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I’m good with these changes. Will need conflict resolution before merging. Happy to do that at my next opportunity.

@farmdawgnation
farmdawgnation merged commit 2c522a3 into lift:master Jun 11, 2020
@ShaneDelmore

ShaneDelmore commented Jul 7, 2020

Copy link
Copy Markdown

False alarm, disregard.

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.

3 participants