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
{{ message }}
This repository has been archived by the owner on Mar 3, 2023. It is now read-only.
This issue tracks the steps necessary to migrate the bookmarks 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/bookmarks repository
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 master in your local clone of atom/atom with the name migrate-bookmarks-package
Delete Atom's node_modules, script/node_modules, and apm/node_modules folders if they exist
Make sure Atom's package-lock.json file is unmodified, use git checkout -- package-lock.json if it isn't
Clone the atom/bookmarks repo into the packages path of your local Atom repository and then delete its .git subfolder
Delete any unnecessary repo configuration files in the packages/bookmarks folder like appveyor.yml, .travis.yml, ISSUE_TEMPLATE.md, and PULL_REQUEST_TEMPLATE.md
Remove any information from the package's README.md which will be inaccurate after the migration is complete (e.g. CI status badges or contribution instructions)
Open packages/bookmarks/package.json and change the repository field to point to the main repo URL https://github.com/atom/atom
Open Atom's package.json file to change the following:
Update the bookmarks entry in packageDependencies to reflect the local path of the package:
"bookmarks": "file:./packages/bookmarks",
Delete the bookmarks entry in the dependencies section since it may contain a hardcoded tarball link. This will help avoid issues in the next step
Open packages/README.md and perform the following edits:
Update the second column of the bookmarks row to reflect the new local path for the package:
[`./bookmarks`](./bookmarks)
Delete the following line toward the end of the file:
[bookmarks]: https://github.com/atom/bookmarks
Run a full Atom build using script/build and verify that there are no unexpected build errors
Commit the migrated package code and any changes to Atom's package-lock.json files to your branch using this commit message:
:arrow_right: Migrate core package 'bookmarks' into ./packages
Phase 3 - Make sure the package works and send a PR
Launch the Atom binary in the ./out folder and manually verify that the migrated package is working without any obvious issues. For example, if you're migrating a color theme, turn on that theme to make sure that it changes the editor colors as expected.
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.
Create a PR against atom/atom with the title "➡ Migrate core package 'bookmarks' into ./packages". For convenience, you may use the following message in your PR body:
### Description of the Change
This PR migrates the core [`bookmarks`](https://github.com/atom/bookmarks) package into `atom/atom`. See issue #18273 for more information.
If any CI tests fail, investigate and fix the failures until CI goes green
Add a label titled packages/bookmarks to the migrated issues so that they can be found easily
Edit the original package repo's README.md (don't commit directly) 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/bookmarks), please direct all issues and pull requests there in the future!
---
Send a PR to the bookmarks repository with the updated README.md so that watchers will be notified of the change. You do not need to wait for reviews, it can be merged immediately. You can use the following PR description text:
As of **INSERT MIGRATION PR LINK**, the `bookmarks` package is now a part of the core Atom repository. This pull request updates `README.md` to reflect that fact. We'll be archiving this repository shortly.
/cc atom/atom#18273
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! 🎉
The text was updated successfully, but these errors were encountered:
Having core packages in the atom repo could have several benefits. Like dependancy management for the packages. They could share dependencies such that each package would be using the same version of the dependancy.
With the current setup we don’t benefit from shared dependancies. The first benefit that comes to mind for moving the packages to the atom repo is improved dev experience.
On the other hand we also have apm link which also improves the dev experience while working on packages.
Having the core-packages migrated to the atom repo doesn’t make a huge difference.
For now I will close this issue but happy to reopen once we re-organise our repo to allow shared dependencies.
This issue tracks the steps necessary to migrate the
bookmarks
package into the coreatom/atom
repository under thepackages
path:Migration Checklist
Phase 1 - Prepare repo for migration
atom/bookmarks
repositorySome guidelines for merging vs closing PRs:
master
, and has passing testsmaster
, or there are failing tests in CIIf 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
master
in your local clone ofatom/atom
with the namemigrate-bookmarks-package
node_modules
,script/node_modules
, andapm/node_modules
folders if they existpackage-lock.json
file is unmodified, usegit checkout -- package-lock.json
if it isn'tatom/bookmarks
repo into thepackages
path of your local Atom repository and then delete its.git
subfolderpackages/bookmarks
folder likeappveyor.yml
,.travis.yml
,ISSUE_TEMPLATE.md
, andPULL_REQUEST_TEMPLATE.md
README.md
which will be inaccurate after the migration is complete (e.g. CI status badges or contribution instructions)packages/bookmarks/package.json
and change therepository
field to point to the main repo URLhttps://github.com/atom/atom
package.json
file to change the following:bookmarks
entry inpackageDependencies
to reflect the local path of the package:bookmarks
entry in thedependencies
section since it may contain a hardcoded tarball link. This will help avoid issues in the next steppackages/README.md
and perform the following edits:script/build
and verify that there are no unexpected build errorspackage-lock.json
files to your branch using this commit message:Phase 3 - Make sure the package works and send a PR
./out
folder and manually verify that the migrated package is working without any obvious issues. For example, if you're migrating a color theme, turn on that theme to make sure that it changes the editor colors as expected.atom/atom
with the title "➡ Migrate core package 'bookmarks' into ./packages". For convenience, you may use the following message in your PR body:Phase 4 - Archive the
bookmarks
repobookmarks
repo toatom/atom
using github-issue-mover or a scriptpackages/bookmarks
to the migrated issues so that they can be found easilyatom/atom
. You can use the following text:bookmarks
repository with the updated README.md so that watchers will be notified of the change. You do not need to wait for reviews, it can be merged immediately. You can use the following PR description text:Migration is now complete! 🎉
The text was updated successfully, but these errors were encountered: