Some 3rd party libraries that are necessary to run Nextcloud.
- Make sure to use the latest version of composer:
composer self-update
- Edit composer.json and adjust the version of the library to the one to update to. Pay attention to use the full version number (i.e. ^5.3.14).
- Run
composer update thevendor/thelib
(replace accordingly) - Delete all installed dependencies with
rm -rf ./*/
- Run
composer install --no-dev
- Run
git clean -X -d -f
- Run
composer dump-autoload
- Commit all changes onto a new branch
- You might need the following command for pushing if used as submodule:
git push [email protected]:nextcloud/3rdparty.git branchname
- On https://github.com/nextcloud/server make a new branch
3rdparty/my-dependency
- Navigate into the 3rdparty directory
- Checkout the commit sha of the last commit of your PR in the 3rdparty repository
- Leave the directory
- Add the change to the stash
- Commit (with sign-off and message)
- Push the branch and send a PR
- ⏳ Wait for CI and reviews
- Navigate into the 3rdparty directory
- Checkout the commit sha of the merge commit of your PR in the 3rdparty repository
- Leave the directory
- Add the change to the stash
- Amend to the previous dependency bump
- Push with lease force
- ⏳ Wait for CI
- Merge 🎉
cd 3rdparty
git checkout 16cd747ebb8ab4d746193416aa2448c8114d5084
cd ..
git add 3rdparty
git commit
git push origin 3rdparty/my-dependency
# Wait for CI and reviews
cd 3rdparty
git checkout 54b63cc87af3ddb0ddfa331f20ecba5fcc01d495
cd ..
git add 3rdparty
git commit --amend
git push --force-with-lease origin 3rdparty/my-dependency