This repository was archived by the owner on Mar 3, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 17.3k
This repository was archived by the owner on Mar 3, 2023. It is now read-only.
Migrate core package 'one-light-ui' into Atom repo #17856
Copy link
Copy link
Closed
Labels
Description
This issue tracks the steps necessary to migrate the one-light-ui package into the core atom/atom repository under the packages path:
Migration Checklist
Phase 1 - Prepare repo for migration
- Merge or close existing pull requests on the
atom/one-light-uirepository
Some guidelines for merging vs closing PRs:
- Merge when the PR is small, useful, has no merge conflicts with
master, and has passing tests - Close when the changes are non-trivial, the PR has conflicts with
master, or there are failing tests in CI
If you close a PR, let the user know that we are currently moving the repository over to atom/atom so they should feel free to reopen the pull request there once the package code has been migrated.
Phase 2 - Migrate the package code
- Create a fresh branch off
masterin your local clone ofatom/atomwith the namemigrate-one-light-ui-package - Delete Atom's
node_modulesfolder if you've built there before and make sure Atom'spackage-lock.jsonfile is unmodified - Clone the
atom/one-light-uirepo into thepackagespath of your local Atom repository and then delete its.gitsubfolder - Delete any unnecessary repo configuration files in the
packages/one-light-uifolder likeappveyor.yml,.travis.yml,ISSUE_TEMPLATE.md, andPULL_REQUEST_TEMPLATE.md - Edit Atom's
package.jsonfile to change theone-light-uientry inpackageDependenciesto reflect the local path of the package:"one-light-ui": "file:./packages/one-light-ui", - Delete the
one-light-uientry inpackage.json'sdependenciessection since it may contain a hardcoded tarball link. This will help avoid issues in the next step - Run a full Atom build using
script/buildand verify that there are no unexpected build errors - Launch the Atom binary in the
./outfolder and spot check for any obvious issues - Open the Chrome Developer Tools console (Ctrl+Shift+I or Cmd+Option+I) and ensure that there are no errors written there. If there are, add them to this issue and investigate.
- Update the second column of the one-light-ui row in
packages/README.mdto reflect the new local path for the package:[`./packages/one-light-ui`](./one-light-ui) - Commit the migrated package code and any changes to Atom's
package-lock.jsonfiles to your branch using this commit message::arrow_right: Migrate core package 'one-light-ui' into ./packages
Phase 3 - Make sure the package works and send a PR
- Run the full suite of Atom tests with
script/testand verify that they pass locally - If any tests fail, investigate and fix them then commit the fixes to your branch
- Create a PR against
atom/atomto verify that CI passes - Once CI is clean and the PR is approved, merge it
Phase 4 - Archive the one-light-ui repo
-
Move all existing issues from theone-light-uirepo toatom/atomusing github-issue-mover or a script -
Add a label titledpackages/one-light-uito the migrated issues so that they can be found easily - Update the original package repo's README.md to point contributors to the code's new home in
atom/atom. You can use the following text:### This package is now a part of the [core Atom repository](https://github.com/atom/atom/tree/master/packages/one-light-ui), please direct all issues and pull requests there in the future! --- - Archive the package repository by going to its Settings page, scroll down to the "Danger Zone" section and click "Archive this Repository"
Migration is now complete! 🎉
Reactions are currently unavailable