You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A lint desired feature for big projects would be the ability to wildcard the tags within both the current onlyDependOnLibsWithTags and any future notDependOnLibsWithTags.
As you can see here, the granularity of the tags, and the ease of mix-&-match would be desired to make powerful rules with minimal efforts.
The rules can be much more granular yet way more simpler, especially, if the future wildcard tags support a new notDependOnLibsWithTags. Especially if we can marry it to a flag called release | prod, to let's say prevent experimental
feature dependancies during production builds. (thinking out loud here!)
Motivation
My experience with very large projects in the healthcare / insurance industries, where some 200+ devs continuously raised PRs without proper import restrictions or rules, shines light on the possible benefit gain, from a more granular tags (scope, types ..etc) system. But with granularity comes complexity, and with complexity come confusions. This feature request is to enable architects layout the rules properly, and for those who step in to maintain it, to understand it easily.
Suggested Implementation
What we need is first to enable wildcard for tags, as per the simulated examples above, then spice it up with the introduction of a negative rule, something like notDependOnLibsWithTags.
Alternate Implementations
To use it as it is now, and tag anything data related as data, no matter how high or low within the thick data-layer a lib falls.
This issue has been automatically marked as stale because it hasn't had any recent activity. It will be closed in 14 days if no further activity occurs.
If we missed this issue please reply to keep it active.
Thanks for being a part of the Nx community! 🙏
Description
A lint desired feature for big projects would be the ability to wildcard the tags within both the current
onlyDependOnLibsWithTags
and any futurenotDependOnLibsWithTags
.As you can see here, the granularity of the tags, and the ease of mix-&-match would be desired to make powerful rules with minimal efforts.
In the following example:
agx-* = framework, platform agnostic lib
ngx-* = angular framework dependant lib
nsx-* = nestjs framework dependant lib
In the above simulated example: (all scoped as
data
)agx-dto
publishes the shape of data between the client & the apiagx-store
publishes a flat, state management system to store statesngx-store-service
publishes the flat, state management system as an injectable service within Angularngx-member-service
: publishes member datansx-member
: has a graphql resolver to return member data (nestjs - server)Where:
agx-dto
doesn't depend on anything and can be used in front/back(end) logicsagx-store
doesn't depend on anything and can be used in front/back(end) logicsngx-store-service
depend onagx-dto
andagx-store
, within Angularngx-member-service
depends onngx-store-service
,agx-store
andagx-dto
, within Angularnxs-member
depends onagx-dto
within NestJsIf wildcard is supported the rules would look much simpler.
The rules can be much more granular yet way more simpler, especially, if the future
wildcard tags
support a newnotDependOnLibsWithTags
. Especially if we can marry it to a flag calledrelease | prod
, to let's say prevent experimentalfeature dependancies during production builds. (thinking out loud here!)
Motivation
My experience with very large projects in the healthcare / insurance industries, where some 200+ devs continuously raised PRs without proper import restrictions or rules, shines light on the possible benefit gain, from a more granular
tags
(scope, types ..etc) system. But with granularity comes complexity, and with complexity come confusions. This feature request is to enable architects layout the rules properly, and for those who step in to maintain it, to understand it easily.Suggested Implementation
What we need is first to enable wildcard for tags, as per the simulated examples above, then spice it up with the introduction of a negative rule, something like
notDependOnLibsWithTags
.Alternate Implementations
To use it as it is now, and tag anything
data
related asdata
, no matter how high or low within the thick data-layer a lib falls.Ref: Fullerstack
The text was updated successfully, but these errors were encountered: