Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • B buck
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 201
    • Issues 201
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 22
    • Merge requests 22
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Meta
  • buck
  • Issues
  • #1392
Closed
Open
Issue created Jun 21, 2017 by Administrator@rootContributor

kotlin_library rules produce different cache/rulekeys on different machines with same settings

Created by: kageiit

When using in memory kotlin compilation, absolute paths are being appended to the rulekey

https://github.com/facebook/buck/blob/00223c7b1e7c5c1544d1d4fc838b87745ffc4ffc/src/com/facebook/buck/jvm/kotlin/JarBackedReflectedKotlinc.java#L68 https://github.com/facebook/buck/blob/00223c7b1e7c5c1544d1d4fc838b87745ffc4ffc/src/com/facebook/buck/jvm/kotlin/JarBackedReflectedKotlinc.java#L165

A sourcepath should be used instead like how in memory java compiler rules work https://github.com/facebook/buck/blob/master/src/com/facebook/buck/jvm/java/JarBackedJavac.java#L47 https://github.com/facebook/buck/blob/master/src/com/facebook/buck/jvm/java/JarBackedJavac.java#L69

This causes the rulekeys to be different on two different checkouts of the same codebase in different directories which basically completely breaks the network cache

Assignee
Assign to
Time tracking