-
Notifications
You must be signed in to change notification settings - Fork 846
DNA: Move some root-level files to the jetpack-standards repo #12384
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
DNA: Move some root-level files to the jetpack-standards repo #12384
Conversation
|
The unit testing is failing because I added I can move the composer install to just those, but leaving it for the moment for the sake of discussion. |
7728af3 to
050a8cc
Compare
|
seems like a solid proposal. are there any down sides that you can think of? The only possibly specific bits I see are in Also |
cfe4ae4 to
012aeba
Compare
…attic/jetpack into try/extract-standards-for-new-repo
|
Thank you for the great PR description! When this PR is ready for review, please apply the Scheduled Jetpack release: June 4, 2019. |
|
@roccotripaldi That's a good question re .jshintrc. @simison, could you weigh in or give me a read of who to ask? On phpcs, I'm fine with it either way. In terms of a rule name, it would be a default set of rules for the The main thrust of the PR is for infra -- does this work as a solution on having a place to put things that we want in every ecosystem plugin? -- and we can modify what goes where. If/once we fire on @tyxla's mirroring solution, I can move the |
|
For some reason this PR is failing on the Beta Builder with the following message: |
|
In a setup like this (or how I understood what this is 🙂) anything with hardcoded paths is prolly going to be problematic; eslint config for example has specific overrides, so do ignore-files. Typical pattern for shared configs is to have versioncontrolled packages for example for eslint, and then very shallow config in consumer application that just says "use this external package as a config". See e.g. browserslist config in package.json as a good example. So instead of config sharing this looks like package bootstrapping to me, in which case you're copying a lot of code to multiple places where it could easily have one source of truth instead. Anyway, I'm making some assumptions here. 🙂 Are we going to be developing in multiple repositories? Thanks for the ping! I appreciate it. |
|
On sidenote, would be reeeeally nice to get rid of jshint soon. It's duplicating that eslint can do much better. There is a helper in Gutenberg's shared eslint config to help to do that. |
|
This is good stuff. Basically, the idea is a common place for common things that shouldn't be different anywhere (like Things like The idea of this is not bootstrapping as much as a way to have a common source of truth for files that cannot live in the /vendor/ folder (like True bootstrapping is something I'm exploring in https://github.com/automattic/jetpack-skeleton (where running |
|
Thanks for elaborating! So development wouldn't happen primarily in one repository (i.e. monorepo) and development and opening PRs would happen in several different repositories? I think I'm not entirely sure what "jetpack ecosystem" is technically. :-) Would e.g. WooCommerce use these files? How would example repository using this package look like? I do t mean to question possible multi-repositories-setup, just trying to understand the goal. :-) |
|
I wasn't clear. Once the monorepo->packagist idea is settled and has landed, it would all be in one repo. Yes, multiple plugins would use it. I'm using the term "Jetpack Ecosystem" to refer to whatever plugins we want to include. For example, VaultPress is a separate plugin that we're bringing fully within the Jetpack name (e.g. "VaultPress by Jetpack"). That plugin (for sure) would use this same package to give the same development baseline as Jetpack itself (and any other plugins adopting into the system). WooCommerce is a bit of a different case since it is well-established with separate standards in place with separate dev teams. Would be cool if they did adopt it, but I wouldn't automatically expect it. But, in a future "Jetpack Search" plugin or other smaller existing plugins or future Jetpack-minded plugins would use it. Does that help any? |
7a4d3f3 to
7df90c1
Compare
|
This needs a new owner who can decide whether it should be merged to master, the features packaging branch, or closed. @jeherve ? |
|
I'll take this on when I get a bit of time. 👍 |
|
Closing this PR in favor of #12547 (it was easier to start from scratch since the state of the repo is quite different now). |
Changes proposed in this Pull Request:
Note: Does not run in production so it doesn't have to wait for Jetpack's PHP version bump.
Is this a new feature or does it add/remove features to an existing part of Jetpack?
Testing instructions:
composer installand verify the files deleted in this PR are added. They should not be in git.Proposed changelog entry for your changes: