-
Notifications
You must be signed in to change notification settings - Fork 929
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
Recursively import component's dependencies and dependents #1885
Comments
Thanks @itaymendel , that would be a super useful feature! I'm thinking maybe we don't need the dependents at all in the workspace. |
I like the idea. However, we would want to indicate that there are dependents the workspace does not use that are auto-tagged. Update
|
How about simplifying the syntax to --dependents (= --recursive dependents) and --dependencies (= --recursive). |
@itaymendel , the specific case of the same component as dependency and dependent is not necessarily a problem. However, as you mentioned, if we want to build/test, it'll be easier to have them in the workspace. We could use the capsule to just isolate them and run the compiler/tester (and for this, we don't need them in the workspace), but with the current performance, it will be a slow process. Maybe we should provide two options:
About your question regarding the 'checkout', it won't be possible if we only import the objects, because the idea is to not having them in the .bitmap file, so the user will need to |
Idea: when recursively importing a component's dependencies, bit should compare with the repo it was exported from to know which dependencies originate from the same project. it can be a nice indication to which components should be auto-imported and which should not. |
The part of I listed them as a table sorted by the depth with the following columns for dependents (dependencies is similar):
@itaymendel , I'm unsure about the |
That looks great @davidfirst I would suggest in the dependencies and dependents tables to remove every time the component itself is shown with "(self)" or something similar, instead of repeating it. It makes a quick scan of the lists much easier. |
@Tallyb , it shows the dependencies only once with no duplications. The depth is the shortest path from the component to the dependency in the graph. Under the hood, it uses Dijkstra's algorithm to find it. About changing the immediate dependency of the component itself to something else, I'm open to it. @itaymendel , what do you think? |
@davidfirst @itaymendel - what do you think about showing all instances, and not just the first one to give more detailed info? |
…ies" for "bit import" to import them all directly
About the flags for @Tallyb , by 'instances' you mean 'depth'? if so, we do show all depths already. |
@davidfirst - by instances, I mean that in the above example comp-c will be shown in 2 separate lines, once for a, and once for b. |
…rt" (#1927) * implements #1885, introduce new flags "--dependents" and "--dependencies" for "bit import" to import them all directly * fix a case when importing a component with --dependent flag and the component has the same dependent with different versions to import only the highest version * fix the graph to include all versions and not only the latest
@Tallyb , we're thinking to add the functionality of generating an image with the entire graph. It'll be easy to see all this data in the graph. |
The flags |
I'm fine with @Tallyb suggestion about "self" it will be easier. we might want to somehow differentiate it from regular names. (color / bold / italic / capital) for making it easier to scan. |
then |
Done. I added it as |
Description
When I want to modify a component, I want to have
autotag
to take care of updating all the dependents of my components. This only happens when the dependent components are sourced to my projects. So I want a way to import all dependents and update them.Describe the solution you'd like
There are several related workflows:
autotag
will take care of the rest.bit tag
command.Examples:
Syntax
List dependents
Import dependencies as components
Import dependents as components
Additional info
bit import <remote>/*
syntax as well.dependents
, near the.dependencies
folder.Questions
The text was updated successfully, but these errors were encountered: