jazzy icon indicating copy to clipboard operation
jazzy copied to clipboard

Multiple modules

Open johnfairh opened this issue 1 year ago • 3 comments

Thanks to the efforts from last year (#1369) there's a prototype and a lot of thoughts about this, so let's see how much further it can go without too much risk to existing projects.

  • [x] Full config model & abstraction
  • [x] Spec testcase
  • [x] Disentangle concept of "the module name" from various places
  • [x] Fix page breadcrumbs
  • [x] File layout to avoid name collisions
  • [x] Grouping policies
  • [x] UI notes for cross-module extensions
  • [x] Name resolution for custom categories
  • [x] Name resolution for autolinks
  • [ ] Docs

Testcase / demo in spec/integration_specs/jazzy_multi_modules, 3x Swift & 1 ObjC module.

johnfairh avatar Feb 08 '24 10:02 johnfairh

1 Warning
:warning: Big PR

Generated by :no_entry_sign: Danger

github-actions[bot] avatar Feb 08 '24 12:02 github-actions[bot]

Some pathological extension-merging... Screenshot 2024-02-16 at 11 06 17

johnfairh avatar Feb 16 '24 11:02 johnfairh

Autolinking was quite an effort; at least I understand what it was doing now. The various test specs have changes which are all improvements/bug fixes --- far too much effort to reimplement the bugs:

  • Moya -- was somehow linking from the LHS of a typealias, doesn't do that any more
  • RealmSwift -- autolinking to Object and stuff nested in typealias'd extensions now works
  • Siesta -- LHS typealias again, plus it was using a module-qualified name in one place that now works
  • JazzyMultiModules -- new examples/tests for x-module name ambiguities etc

I am confident the rework is good, the specs exercise all the paths in so many weird ways.

johnfairh avatar Feb 21 '24 19:02 johnfairh