-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for shared definitions #36
Comments
Yes, there are two use cases for bringing definitions into a workspace that aren't in the current repository:
In either case, there are a few options:
Given your use case, I think for now, I will see about the first option first - just allowing the existing Stay tuned! |
From initial spikes on this, it's not as straightforward as I'd hoped. Support for vscode just working when requesting to load a An alternative approach that I'm considering which might make a lot of sense, is to include the definitions file in a package and distribute it to other 'services'/'repos' via the native package management tools of the programming languages in question. Consider a bounded context
As If we ensure that the
The challenge with this approach is differences in the way package management tools store the downloaded packages. There are three common options, not exhaustive, but to illustrate the breadth of possibilities:
A proposal for resolving scenario 3:
As an example, with In
Contextive will execute:
Which on both linux and windows will return the exact path of the file in the package manager's cache. I'll need to check, but I suspect it will be possible to find similar shell commands for other package managers that will help identify the local path of the package, and thus the location of the definitions file. Pros
Cons
Next StepsI'm proceeding with a spikes to verify the feasibility of this approach, but thought I'd throw it out here for feedback - any thoughts? |
…s to enable more complex location discovery scripts #36
# [1.5.0](v1.4.0...v1.5.0) (2022-02-13) ### Features * **language-server:** allow contextive.path to contain shell commands to enable more complex location discovery scripts [#36](#36) ([dc17612](dc17612))
See v1.5.0 for support for the 'shell escape' approach, and https://github.com/dev-cycles/contextive-demo-go-service for a sample of it in operation with a shared More details in the readme here: https://github.com/dev-cycles/contextive/blob/main/src/vscode/contextive/README.md#single-bounded-context-multiple-repositories |
We use multiple git repositories for distinct services / functions in the same domain. Do you have any ideas for how we could share the
definitions.yml
file between them (other than copy and paste 😜)?The text was updated successfully, but these errors were encountered: