lint-deps.toml 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. # Copyright Materialize, Inc. and contributors. All rights reserved.
  2. #
  3. # Use of this software is governed by the Business Source License
  4. # included in the LICENSE file at the root of this repository.
  5. #
  6. # As of the Change Date specified in that file, in accordance with
  7. # the Business Source License, use of this software will be governed
  8. # by the Apache License, Version 2.0.
  9. # Configuration file for cargo-deplint
  10. #
  11. # If you find yourself here because CI failed on a PR, please don't blindly edit
  12. # out lints :D. Danhhz is always happy to discuss crate structure if you need
  13. # help fitting a change into these rules.
  14. # Keep various large crates from depending on frequently changing ones, so that
  15. # development iteration doesn't invalidate them.
  16. [[deny]]
  17. name = "mz-transform"
  18. dependencies = [
  19. "mz-compute-client",
  20. "mz-storage-client",
  21. ]
  22. [[deny]]
  23. name = "mz-sql"
  24. dependencies = [
  25. "mz-compute-client",
  26. "mz-storage-client",
  27. ]
  28. [[deny]]
  29. name = "mz-compute"
  30. dependencies = [
  31. "mz-storage-controller",
  32. "mz-storage",
  33. ]
  34. [[deny]]
  35. name = "mz-storage"
  36. dependencies = [
  37. "mz-storage-controller",
  38. "mz-compute",
  39. ]
  40. # Keep various `*-types` crates from depending on `*-client` crates. This list
  41. # is unfortunately manual for now.
  42. [[deny]]
  43. name = "mz-adapter-types"
  44. dependencies = [
  45. "mz-persist-client",
  46. ]
  47. [[deny]]
  48. name = "mz-compute-types"
  49. dependencies = [
  50. "mz-persist-client",
  51. ]
  52. [[deny]]
  53. name = "mz-controller-types"
  54. dependencies = [
  55. "mz-persist-client",
  56. ]
  57. [[deny]]
  58. name = "mz-persist-types"
  59. dependencies = [
  60. "mz-persist-client",
  61. ]
  62. [[deny]]
  63. name = "mz-rocksdb-types"
  64. dependencies = [
  65. "mz-persist-client",
  66. ]
  67. [[deny]]
  68. name = "mz-storage-types"
  69. dependencies = [
  70. "mz-persist-client",
  71. ]
  72. [[deny]]
  73. name = "mz-storage-types"
  74. dependencies = [
  75. "mz-txn-wal",
  76. ]
  77. # Keep various crates in only one of environmentd or clusterd.
  78. [[deny]]
  79. name = "mz-environmentd"
  80. dependencies = [
  81. "mz-compute",
  82. "mz-rocksdb",
  83. "mz-storage",
  84. "mz-storage-operators",
  85. ]
  86. [[deny]]
  87. name = "mz-clusterd"
  88. dependencies = [
  89. "mz-storage-controller",
  90. ]
  91. # Persist is meant to be a strong enough abstraction that it doesn't depend on
  92. # mz internals like Row.
  93. [[deny]]
  94. name = "mz-persist-client"
  95. dependencies = [
  96. "mz-repr",
  97. ]