Skip to content
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

Eslint rule forbidding top level export * #57370

Open
stacey-gammon opened this issue Feb 11, 2020 · 8 comments
Open

Eslint rule forbidding top level export * #57370

stacey-gammon opened this issue Feb 11, 2020 · 8 comments
Assignees
Labels
Feature:Development impact:needs-assessment Product and/or Engineering needs to evaluate the impact of the change. loe:small Small Level of Effort Team:Operations Team label for Operations Team

Comments

@stacey-gammon
Copy link
Contributor

stacey-gammon commented Feb 11, 2020

The app arch team, and I think the platform team, have both decided that the "best practice" for top level exports, at public/index.ts and server/index.ts should use explicit exports only.

This will help ensure interfaces don't accidentally leak into the public contract.

It'd be great if we could right an es lint rule for this as it'd be nice to enforce all teams follow this.


Completion status: https://github.com/elastic/kibana/projects/76

@stacey-gammon stacey-gammon added Team:Core Core services & architecture: plugins, logging, config, saved objects, http, ES client, i18n, etc Team:Operations Team label for Operations Team labels Feb 11, 2020
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-platform (Team:Platform)

@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-operations (Team:Operations)

@stacey-gammon
Copy link
Contributor Author

We've added this rule into our style guide, but ideally it would be linted on. (https://github.com/elastic/kibana/blob/master/STYLEGUIDE.mdx#avoid-export--in-top-level-indexts-files)

Any thoughts on whether this could be prioritized?

@mshustov
Copy link
Contributor

mshustov commented Jun 4, 2021

Any thoughts on whether this could be prioritized?

Do you want only Core and AppServices teams to adopt this rule? Maybe we should combine this effort with other linting issues into a single project (I suspect this one #74385 will create a lot of noise)?

@stacey-gammon
Copy link
Contributor Author

I think everyone contributing code to Kibana should adopt the rule.

If you think it will be more effective to combine with that issue, sounds good to me!

@mshustov
Copy link
Contributor

mshustov commented Jun 7, 2021

If you think it will be more effective to combine with that issue, sounds good to me!

I think it might reduce the communication overhead for all the linter changes. A team can fix several of them at once since most of them are quite trivial.
But realistically, it might be postponed until 8.0?

@tylersmalley tylersmalley added 1 and removed 1 labels Oct 11, 2021
@exalate-issue-sync exalate-issue-sync bot added impact:low Addressing this issue will have a low level of impact on the quality/strength of our product. loe:small Small Level of Effort labels Nov 5, 2021
@tylersmalley tylersmalley removed loe:small Small Level of Effort impact:low Addressing this issue will have a low level of impact on the quality/strength of our product. EnableJiraSync labels Mar 16, 2022
@tylersmalley tylersmalley removed the Team:Operations Team label for Operations Team label Mar 31, 2022
@exalate-issue-sync exalate-issue-sync bot added impact:needs-assessment Product and/or Engineering needs to evaluate the impact of the change. loe:small Small Level of Effort labels Mar 31, 2022
@rudolf
Copy link
Contributor

rudolf commented Nov 14, 2022

We support this proposal but implementing this does not feel like a good fit for the Core team's responsibilities so removing the Core team's assignment.

@tylersmalley not sure if removing the operations team was intentional? Should we close the issue if no one is planning on working on it?

@rudolf rudolf removed the Team:Core Core services & architecture: plugins, logging, config, saved objects, http, ES client, i18n, etc label Nov 14, 2022
@botelastic botelastic bot added the needs-team Issues missing a team label label Nov 14, 2022
@drewdaemon drewdaemon added the Team:Operations Team label for Operations Team label Dec 20, 2022
@botelastic botelastic bot removed the needs-team Issues missing a team label label Dec 20, 2022
@drewdaemon
Copy link
Contributor

Sent back to the operations team. Feel free to close if it is not an issue you'll be addressing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature:Development impact:needs-assessment Product and/or Engineering needs to evaluate the impact of the change. loe:small Small Level of Effort Team:Operations Team label for Operations Team
Projects
None yet
Development

No branches or pull requests

7 participants