You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

4.0 KiB

Updating Skia

  1. Update third_party/skia submodule in skija repo.
  2. Ensure Skija build is not broken:
  3. If used Skia branch is changed (e.g. a switch from chrome/m85 to chrome/m86), update VER variable value in build scripts:
  4. Deploy Skia to Bintray by clicking "Deploy" (or "..." to customize options) in Skia | Publish Release configuration.
  5. Pin the resulting build to preserve artifacts on TeamCity too.
  6. Update Skia in Skiko:
    • Update the following configuration parameters in gradle.properties:
      • dependencies.skija.git.commit,
      • dependencies.skia.windows,
      • dependencies.skia.linux,
      • dependencies.skia.windows.
    • Ensure build is not broken by running ./gradlew publishToMavenLocal in <skiko_root>/skiko:
    • To further ensure, that Skiko builds on all platforms, consider running a new build in Build Check configuration:
      • click "...",
      • EITHER choose a branch/commit on "Changes" tab,
      • OR upload a custom patch by checking "run as a personal build" on "General" tab.

Releasing Skiko

  1. Check, that the release is ready:
    • Ask teammates if all the necessary changes are published;
    • Determine a git commit for a release;
    • Check, that sample projects work:
      • E.g. cd skiko && ./gradlew publishToMavenLocal && cd samples/SkijaInjectSample && ./gradlew run;
      • Ask teammates for help with testing on platforms you don't have access to.
  2. Deploy Skiko to Space by clicking "Deploy" in Publish Release configuration:
    • Set "Skiko Release Version" on "Parameters" tab to a new release version;
    • Choose a branch/commit on "Changes" tab;
    • (Tip) If you're in a hurry, consider checking "put the build to the queue top" on "General" tab.
  3. Create a release on GitHub
    • Use v<RELEASE_VERSION> pattern for the tag version (e.g. v0.1.6)
    • Attach artifacts from the finished build in Publish Release configuration.

Updating Skiko in Compose

  1. Use <androidx-dev-master>/frameworks/support/development/importMaven/import_maven_artifacts.py script to download maven artifacts:
    # you may need to add `maven("https://packages.jetbrains.team/maven/p/ui/dev")` 
    # the repository section of corresponding build.gradle.kts
    export SKIKO_VERSION="0.1.6"
    import_maven_artifacts.py --name "org.jetbrains.skiko:skiko-jvm:$SKIKO_VERSION"
    import_maven_artifacts.py --name "org.jetbrains.skiko:skiko-jvm-runtime-linux:$SKIKO_VERSION"
    import_maven_artifacts.py --name "org.jetbrains.skiko:skiko-jvm-runtime-windows:$SKIKO_VERSION"
    import_maven_artifacts.py --name "org.jetbrains.skiko:skiko-jvm-runtime-macos:$SKIKO_VERSION"
    
  2. Commit changes to <androidx-dev-master>/prebuilts/androidx/external repository & upload a CL.

Publishing Compose Desktop

Run a new build in Compose configuration