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

3rd try - Mongoose Updates - Update dependencies to enable Greenkeeper 🌴 SC-418 #733

Merged
merged 13 commits into from
Aug 28, 2019

Conversation

greenkeeper[bot]
Copy link
Contributor

@greenkeeper greenkeeper bot commented Aug 6, 2019

Let’s get started with automated dependency management for schulcloud-server 💪

🔒 Greenkeeper has found a package-lock.json file in this repository. Greenkeeper supports lockfile updates for public packages. If you use private packages in your repository, please use greenkeeper-lockfile to make sure these can get updated as well.

This pull request updates all your dependencies to their latest version. Having them all up to date really is the best starting point for keeping up with new releases. Greenkeeper will look out for further dependency updates and make sure to handle them in isolation and in real-time, but only after you merge this pull request.

Important: Greenkeeper will only start watching this repository’s dependency updates after you merge this initial pull request.


💥 Tests on this branch are failing. Here’s how to proceed.

To solve the issue, first find out which of the dependency’s updates is causing the problem. Then fix your code to accomodate the changes in the updated dependency. next-update is a really handy tool to help you with this.

Then push your changes to this branch and merge it.

🏗 How to configure Travis CI

Greenkeeper has added a rule to your .travis.yml that whitelists Greenkeeper branches, which are created when your dependencies are updated. Travis CI will run your tests on these branches automatically to see if they still pass.

No additional setup is required 😊

🙈 How to ignore certain dependencies

You may have good reasons for not wanting to update to a certain dependency right now. In this case, you can change the dependency’s version string in the package.json file back to whatever you prefer.

To make sure Greenkeeper doesn’t nag you again on the next update, add a greenkeeper.ignore field to your package.json, containing a list of dependencies you don’t want to update.

// package.json
{
  
  "greenkeeper": {
    "ignore": [
      "package-names",
      "you-want-me-to-ignore"
    ]
  }
}
👩‍💻 How to update this pull request
  # Change into your repository’s directory
  git fetch --all
  git checkout greenkeeper/initial
  npm install-test
  # Adapt your code until everything works again
  git commit -m 'chore: adapt code to updated dependencies'
  git push https://github.com/schul-cloud/schulcloud-server.git greenkeeper/initial
✨ How do dependency updates work with Greenkeeper?

After you merge this pull request, Greenkeeper will create a new branch whenever a dependency is updated, with the new version applied. The branch creation should trigger your testing services and check whether your code still works with the new dependency version. Depending on the the results of these tests Greenkeeper will try to open meaningful and helpful pull requests and issues, so your dependencies remain working and up-to-date.

-  "underscore": "^1.6.0"
+  "underscore": "^1.7.0"

The above example shows an in-range update. 1.7.0 is included in the old ^1.6.0 range, because of the caret ^ character .
When the test services report success Greenkeeper will silently delete the branch again, because no action needs to be taken – everything is fine.

However, should the tests fail, Greenkeeper will create an issue to inform you about the problem immediately.

This way, you’ll never be surprised by a dependency breaking your code. As long as everything still works, Greenkeeper will stay out of your way, and as soon as something goes wrong, you’ll be the first to know.

-  "lodash": "^3.0.0"
+  "lodash": "^4.0.0"

In this example, the new version 4.0.0 is not included in the old ^3.0.0 range.
For version updates like these – let’s call them “out of range” updates – you’ll receive a pull request.

This means that you no longer need to check for new versions manually – Greenkeeper will keep you up to date automatically.

These pull requests not only serve as reminders to update: If you have solid tests and good coverage, and the pull requests passes those tests, you can very likely just merge it and release a new version of your software straight away :shipit:

To get a better idea of which ranges apply to which releases, check out the extremely useful semver calculator provided by npm.

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Good luck with your project and see you soon ✨

Your Greenkeeper bot 🌴

@pullapprove pullapprove bot requested a review from tofixx August 6, 2019 12:37
@pullapprove
Copy link

pullapprove bot commented Aug 6, 2019

Hey @Greenkeeper[bot], thanks for the PR! The review will start once
the tests, CI checks and PR requirements (see checklist in your PR) have passed.

@malcm malcm added the WIP This feature branch is in progress, do not merge into master. label Aug 6, 2019
@malcm malcm changed the title Update dependencies to enable Greenkeeper 🌴 3rd try - Update dependencies to enable Greenkeeper 🌴 SC-418 Aug 6, 2019
@malcm malcm changed the title 3rd try - Update dependencies to enable Greenkeeper 🌴 SC-418 3rd try - Mongoose Updates - Update dependencies to enable Greenkeeper 🌴 SC-418 Aug 6, 2019
@codecov
Copy link

codecov bot commented Aug 6, 2019

Codecov Report

Merging #733 into develop will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           develop    #733   +/-   ##
=======================================
  Coverage     65.5%   65.5%           
=======================================
  Files          217     217           
  Lines         7099    7099           
=======================================
  Hits          4650    4650           
  Misses        2449    2449

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 5dad607...0f05b3c. Read the comment docs.

tofixx
tofixx previously requested changes Aug 7, 2019
Copy link
Contributor

@tofixx tofixx left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please add them manually and FIX THE TESTS

npm WARN eslint-config-airbnb-base@13.1.0 requires a peer of eslint@^4.19.1 || ^5.3.0 but none is installed. You must install peer dependencies yourself.
npm WARN eslint-plugin-import@2.16.0 requires a peer of eslint@2.x - 5.x but none is installed. You must install peer dependencies yourself.
npm WARN mongoose-history@0.8.0 requires a peer of async@^2.0.0 but none is installed. You must install peer dependencies yourself.

@malcm
Copy link
Contributor

malcm commented Aug 7, 2019

please add them manually and FIX THE TESTS

npm WARN eslint-config-airbnb-base@13.1.0 requires a peer of eslint@^4.19.1 || ^5.3.0 but none is installed. You must install peer dependencies yourself.
npm WARN eslint-plugin-import@2.16.0 requires a peer of eslint@2.x - 5.x but none is installed. You must install peer dependencies yourself.
npm WARN mongoose-history@0.8.0 requires a peer of async@^2.0.0 but none is installed. You must install peer dependencies yourself.

eslint-config-airbnb-base is working on the update to eslint 6.x --> airbnb/javascript#2036
Probably the update will work until mongoose is updated. tbd who will do this.

Other peer dependencies are fixed

@tofixx
Copy link
Contributor

tofixx commented Aug 7, 2019

what about checking the failing tests? @malcm

@malcm
Copy link
Contributor

malcm commented Aug 7, 2019

what about checking the failing tests? @malcm

That's the mongoose update ... like written before we need to discuss who will do it.

@greenkeeper
Copy link
Contributor Author

greenkeeper bot commented Aug 13, 2019

Hey there 👋,

we noticed that this PR isn’t merged yet. Just to let you know: if you don't merge this PR, Greenkeeper will not be enabled on this repo, and you won't receive updates for your dependencies.

If you don't want to enable Greenkeeper here, just close or ignore this PR, we won't nag you again. ✌️

Have a great day! 🌴

@tofixx
Copy link
Contributor

tofixx commented Aug 13, 2019

what about checking the failing tests? @malcm

That's the mongoose update ... like written before we need to discuss who will do it.

however we must not update mongoose in this pr. this can happen just anytime later. @malcm

@Parnswir
Copy link
Contributor

Parnswir commented Aug 22, 2019

IMHO It would be okay to let greenkeeper ignore mongoose for now... (see PR description)

@malcm
Copy link
Contributor

malcm commented Aug 23, 2019

please add them manually and FIX THE TESTS

npm WARN eslint-config-airbnb-base@13.1.0 requires a peer of eslint@^4.19.1 || ^5.3.0 but none is installed. You must install peer dependencies yourself.
npm WARN eslint-plugin-import@2.16.0 requires a peer of eslint@2.x - 5.x but none is installed. You must install peer dependencies yourself.
npm WARN mongoose-history@0.8.0 requires a peer of async@^2.0.0 but none is installed. You must install peer dependencies yourself.

Fixed dependencies and possible usage of eslint 6

@malcm malcm removed the WIP This feature branch is in progress, do not merge into master. label Aug 23, 2019
@malcm malcm requested a review from tofixx August 23, 2019 08:22
@malcm
Copy link
Contributor

malcm commented Aug 23, 2019

@schul-cloud/server-core email-templates ist eigentlich garnicht weiter benutzt. Denkt ihr wir brauchen das oder wollen wir es rauswerfen?

@tofixx tofixx added this to Work in progress in PR Status Board Aug 27, 2019
@Parnswir
Copy link
Contributor

email-templates wird im email helper benutzt.

PR Status Board automation moved this from Work in progress to Reviewer approved Aug 28, 2019
@pullapprove
Copy link

pullapprove bot commented Aug 28, 2019

The review is completed. @Greenkeeper[bot], please follow further instructions from our Review-Guidelines https://docs.schul-cloud.org/display/SCDOK/Review-Guidelines

@Parnswir Parnswir merged commit 20097b5 into develop Aug 28, 2019
PR Status Board automation moved this from Reviewer approved to Done (unreleased) Aug 28, 2019
@Parnswir Parnswir deleted the greenkeeper/initial branch August 28, 2019 13:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
PR Status Board
  
Done (unreleased)
Development

Successfully merging this pull request may close these issues.

None yet

3 participants