Skip to content
This repository was archived by the owner on Jun 20, 2023. It is now read-only.

Conversation

@Redth
Copy link
Member

@Redth Redth commented Dec 13, 2018

Android Support Libraries 28.0.0

moljac and others added 30 commits April 25, 2018 18:42
- cake addins version pinnings
- API_INFO as variable)
use local cake.packages.config
pin cake 27.0.0
# Conflicts:
#	arch-lifecycle/viewmodel/source/Arch.Lifecycle.ViewModel.csproj
#	build.cake
#	build.sh
#	cake.packages.config
#	preference-leanback-v17/source/V17-Preference-Leanback.csproj
#	support-dynamic-animation/source/Additions/Additions.cs
This commit marks a different approach to maintaining the bindings, and now uses a binding generation tool currently called AndroidBinderator.

This tool will fetch all the required maven artifact information including dependency chains, binaries, etc, and generate Xamarin.Android binding projects for the maven artifacts based on Razor templates for both the .csproj and .targets files.

This also uses new SDK style projects which makes packaging nugets easier, especially for including the correct dependency chains in the nupkg’s (which is automated from the maven repository info).

This is a work in progress.
Redth and others added 28 commits November 13, 2018 09:02
They added a BaseOnOffsetChangedListener and our generator was assigning it Java.Lang.Object instead of AppBarLayout
Some type forwards added are still in the direct child assemblies and don't need to be included here as they will be generated.
GenAPI is super fickle.  It doesn't like some trailing slashes in some cases, or ; instead of , as a path separator.  Also, looks like the v4 project was missing some expected msbuild properties when invoked from the command line on incremental builds, so hard coded things like the intermediate output path and the v9.0 / monoandroid90 framework version which we'll need to eventually bump (maybe not since there are no more support libs?).
GenAPI is a very brittle tool, especially to have run xplat.  Since we don't anticipate doing these typeforwards again as Android Support 28.x is the last support library version that will be released, we are going to just manually commit the generated typeforwards this one time, and make it so that msbuild target won't actually run on build.  This resolves some headaches of trying to make something work that won't be needed (at least in the same way) again.
`LookupTableInterpolator` was not marked public but was a base type of some missing interpolator classes (like `FastOutSlowInInterpolator`).  Marking it public makes these types bound again.

This fixes #127
This one wasn't getting downloaded and picked up for packaging, so it went missing...
Updated to switch to nuget validation
Added nuget validation to the 28.x branch
This one was causing issues in the java callable wrapper being generated since it wasn't being generated with the generic type argument on the java side.

Turns out, this might have caused issues in .NET bindings as well, so for now we are safe to remove it as there are still overloads anywhere `BaseOnOffsetChangedListener` is used that accept `OnOffsetChangedListener` and both interfaces contain the same method (as used in practice).
This reverts commit 917f6b7.

This typo causes issues with other things already referencing it.  We are sticking with the unfortunate typo for now at least.  In the future we could consider adding a meta package to fix it up.
@Redth Redth merged commit 6ad1fd2 into master Dec 14, 2018
@Redth Redth deleted the 28.0.0 branch December 14, 2018 17:49
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants