Giter Site home page Giter Site logo

tophat / monodeploy Goto Github PK

View Code? Open in Web Editor NEW
104.0 3.0 6.0 14.93 MB

:monorail: Like semantic-release and Lerna, but for Yarn modern workspaces

Home Page: https://tophat.github.io/monodeploy/

License: Apache License 2.0

JavaScript 2.39% Shell 0.11% Dockerfile 0.08% TypeScript 91.87% CSS 0.50% MDX 5.05%
continuous-integration continuous-delivery monorepo package-management yarn-workspaces

monodeploy's People

Contributors

allcontributors[bot] avatar anvargazizovth avatar dbasilio avatar dependabot-preview[bot] avatar dependabot[bot] avatar fmal avatar gabormagyar avatar greenkeeper[bot] avatar imccausl avatar jakebolam avatar lime-green avatar mcataford avatar msrose avatar noahnu avatar papooch avatar renovate[bot] avatar shawndrape avatar thebrendan avatar tophat-opensource-bot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

monodeploy's Issues

Support installing monodeploy from git

Is your feature request related to a problem? Please describe.

We currently transpile manually at the moment which prevents installations from git from working.

Describe the solution you'd like

Use appropriate lifecycle hooks to build the package.

Use destructuring instead of positional args for function parameters

Is your feature request related to a problem? Please describe.

This is hard to extend:

const newVersions = await applyReleases(
    config,
    context,
    workspacesToPublish,
    registryTags,
    versionStrategies,
)

Describe the solution you'd like

Don't use positional args anywhere.

const newVersions = await applyReleases({
    config,
    context,
    workspacesToPublish,
    registryTags,
    versionStrategies,
})

Dependabot couldn't find a package.json for this project

Dependabot couldn't find a package.json for this project.

Dependabot requires a package.json to evaluate your project's current JavaScript dependencies. It had expected to find one at the path: /website/package.json.

If this isn't a JavaScript project, or if it is a library, you may wish to disable updates for it in the .dependabot/config.yml file in this repo.

View the update logs.

Run lifecycle hooks in topological sort order via CLI flag

Is your feature request related to a problem? Please describe.

If package A depends on package B, there should be a guarantee that package B is built before package A's prepack is run.

Describe the solution you'd like

A new CLI flag to enable topological sort.

Describe alternatives you've considered

Additional context

Both lerna and yarn workspaces supports topological sort. Yarn has 2 options for this sort, one based on dependencies, and one based on dependencies+devDependencies. We can also support both.

Support non-latest npm dist tags

Is your feature request related to a problem? Please describe.

Currently we publish with tag=latest, are there use cases where we want to specify some other tag? Pre-release?

Describe the solution you'd like

Unclear.

An in-range update of eslint-plugin-react is breaking the build 🚨

The devDependency eslint-plugin-react was updated from 7.14.2 to 7.14.3.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

eslint-plugin-react is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).
  • βœ… ci/circleci: website: Your tests passed on CircleCI! (Details).

Release Notes for v7.14.3

Fixed

  • Fix prop-types to ignore validation when Flow indexers are used (#2330 @yannickcr)
  • Fix error being thrown after the first warning when react version cannot be detected (#2336 @abhishekdev)
  • Fix component detection when memo and forwardRef are used together (#2349 @yannickcr)

Changed

Commits

The new version differs by 14 commits.

  • 47c4c8b Update CHANGELOG and bump version
  • 98d4bf3 Fix component detection when memo and forwardRef are used together
  • fc70077 Merge pull request #2354 from golopot/patch-1
  • f2891d9 [docs] remove outdated docs for no-unused-prop-types
  • 49343d4 [meta] add github sponsorship
  • 562e441 Add Tidelift badge to README
  • b684e87 Add SECURITY file
  • 22a3740 Add FUNDING file
  • e835aaf add note about global installs being deprecated
  • 0215c38 Merge pull request #2336 from abhishekdev/handle-react-detect-errors
  • 8fbf50c version detection: Do not throw a raw error after the first warning
  • f59e927 version detection: Add tests
  • d6832d6 Fix new required import order
  • bc67d42 Fix prop-types to ignore validation when Flow indexers are used

See the full diff

FAQ and help

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


Your Greenkeeper Bot 🌴

Run tests against Node 14 & 16

Is your feature request related to a problem? Please describe.

Node 16 was just released. We should run tests against it in the github workflow.

Describe the solution you'd like

Matrix

Errors trying to use monodeploy config.

Describe the bug

Trying to use the --config-file flag to pass monodeploy a config, and have ran into multiple issues

To reproduce

yarn add -D monodeploy@^2.3.0

create file monodeploy.config.js with contents

import type { MonodeployConfiguration }  from '@monodeploy/types'
import monodeploy from '@monodeploy/node'

try {
    const config: MonodeployConfiguration = {
        noRegistry: true
    }
    const changeset = await monodeploy(config)
} catch (err) {
    console.error(err)
}

run yarn monodeploy --config-file monodeploy.config.js

and get

Error: Unable to parse monodeploy config from: monodeploy.config.js.

Your application tried to access monodeploy.config.js, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound.

Required package: monodeploy.config.js (via "monodeploy.config.js")
Required by: /Users/matthaber/repos/matt-test-terraform/

Require stack:
- /Users/matthaber/repos/matt-test-terraform/.yarn/cache/monodeploy-npm-2.3.0-73b88a750a-b0994a0d18.zip/node_modules/monodeploy/lib/readConfigFile.js
- /Users/matthaber/repos/matt-test-terraform/.yarn/cache/monodeploy-npm-2.3.0-73b88a750a-b0994a0d18.zip/node_modules/monodeploy/lib/cli.js
    at readConfigFile (/Users/matthaber/repos/matt-test-terraform/.yarn/cache/monodeploy-npm-2.3.0-73b88a750a-b0994a0d18.zip/node_modules/monodeploy/lib/readConfigFile.js:23:13)
    at /Users/matthaber/repos/matt-test-terraform/.yarn/cache/monodeploy-npm-2.3.0-73b88a750a-b0994a0d18.zip/node_modules/monodeploy/lib/cli.js:92:79
    at Object.<anonymous> (/Users/matthaber/repos/matt-test-terraform/.yarn/cache/monodeploy-npm-2.3.0-73b88a750a-b0994a0d18.zip/node_modules/monodeploy/lib/cli.js:121:3)
    at Module._compile (internal/modules/cjs/loader.js:1063:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
    at Module.load (internal/modules/cjs/loader.js:928:32)
    at Function.external_module_.Module._load (/Users/matthaber/repos/matt-test-terraform/.pnp.js:13144:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
    at internal/main/run_main_module.js:17:47
Command failed: /Users/matthaber/.nvm/nvm-exec /Users/matthaber/.yvm/versions/v1.22.5/bin/yarn.js monodeploy --config-file monodeploy.config.js

i tried passing it as a relative pass and then get...

yarn monodeploy --config-file ./monodeploy.config.js

Error: Unable to parse monodeploy config from: ./monodeploy.config.js.

Cannot use import statement outside a module
    at readConfigFile (/Users/matthaber/repos/matt-test-terraform/.yarn/cache/monodeploy-npm-2.3.0-73b88a750a-b0994a0d18.zip/node_modules/monodeploy/lib/readConfigFile.js:23:13)
    at /Users/matthaber/repos/matt-test-terraform/.yarn/cache/monodeploy-npm-2.3.0-73b88a750a-b0994a0d18.zip/node_modules/monodeploy/lib/cli.js:92:79
    at Object.<anonymous> (/Users/matthaber/repos/matt-test-terraform/.yarn/cache/monodeploy-npm-2.3.0-73b88a750a-b0994a0d18.zip/node_modules/monodeploy/lib/cli.js:121:3)
    at Module._compile (internal/modules/cjs/loader.js:1063:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
    at Module.load (internal/modules/cjs/loader.js:928:32)
    at Function.external_module_.Module._load (/Users/matthaber/repos/matt-test-terraform/.pnp.js:13144:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
    at internal/main/run_main_module.js:17:47
Command failed: /Users/matthaber/.nvm/nvm-exec /Users/matthaber/.yvm/versions/v1.22.5/bin/yarn.js monodeploy --config-file ./monodeploy.config.js

to my knowledge, the config i used is a copy of the one in the docs, so /should/ work?

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating husky in /yarn.lock:
https://registry.yarnpkg.com/monodeploy-types: Not found

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

Add option to skip tagging for testing

Is your feature request related to a problem? Please describe.

We are migrating to monodeploy and want to ensure that publishing of packages will work before we merge to master. To that end, we have a test registry that we can push packages to, but the versioning there is wildly inconsistent with our production registry. That's fine for our testing purposes, but monodeploy fails on tag creation because it is attempting to create tags that already exist.

Describe the solution you'd like

A --no-tag option that will cause monodeploy to skip tag creation

Describe alternatives you've considered

We can call our test "complete" since the publish to the test registry did occur, but monodeploy threw an error in the process. This is not necessary but would be nice for migration/testing purposes.

Invalid Greenkeeper configuration file

We have detected a problem with your Greenkeeper config file 🚨

Greenkeeper currently can’t work with your greenkeeper.json config file because it is invalid. We found the following issue:

  1. The root-level key greenkeeper is invalid. If you meant to add a group named greenkeeper, please put it in a root-level groups object. Valid root-level keys are groups and ignore.

Please correct this and commit the fix to your default branch (usually master). Greenkeeper will pick up your changes and try again. If in doubt, please consult the config documentation.

Here’s an example of a valid greenkeeper.json:

{
  "groups": {
    "frontend": {
      "packages": [
        "webapp/package.json",
        "cms/package.json",
        "analytics/package.json"
      ]
    },
    "build": {
      "packages": [
        "package.json"
      ]
    }
  },
  "ignore": [
    "standard",
    "eslint"
  ]
}

This files tells Greenkeeper to handle all dependency updates in two groups. All files in the frontend group will receive updates together, in one issue or PR, and the root-level package.json in the build group will be treated separately. In addition, Greenkeeper will never send updates for the standard and eslint packages.

πŸ€– 🌴

An in-range update of babel7 is breaking the build 🚨

There have been updates to the babel7 monorepo:

    • The devDependency @babel/core was updated from 7.4.5 to 7.5.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

This monorepo update includes releases of one or more dependencies which all belong to the babel7 group definition.

babel7 is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).
  • βœ… ci/circleci: website: Your tests passed on CircleCI! (Details).

FAQ and help

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


Your Greenkeeper Bot 🌴

An in-range update of prettier is breaking the build 🚨

The devDependency prettier was updated from 1.18.2 to 1.19.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

prettier is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • βœ… ci/circleci: build: Your tests passed on CircleCI! (Details).
  • βœ… ci/circleci: website: Your tests passed on CircleCI! (Details).
  • βœ… ci/circleci: test: Your tests passed on CircleCI! (Details).
  • ❌ ci/circleci: lint: Your tests failed on CircleCI (Details).

Release Notes for Prettier 1.19: Long awaited Vue option, TypeScript 3.7 and new JavaScript features

diff

πŸ”— Release Notes

FAQ and help

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


Your Greenkeeper Bot 🌴

An in-range update of eslint-config-prettier is breaking the build 🚨

The devDependency eslint-config-prettier was updated from 5.0.0 to 5.1.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

eslint-config-prettier is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).
  • βœ… ci/circleci: website: Your tests passed on CircleCI! (Details).

Commits

The new version differs by 5 commits.

  • b9b2ba8 eslint-config-prettier v5.1.0
  • 6d24525 Update npm packages
  • df8be25 Update eslint-plugin-react version in readme
  • 5c446dc Merge pull request #97 from ybiquitous/issue-96
  • 6b1bcec Turn off react/jsx-curly-newline

See the full diff

FAQ and help

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


Your Greenkeeper Bot 🌴

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating eslint-config-prettier in /yarn.lock:
Couldn't find any versions for "monodeploy-types" that matches "workspace:packages/types"

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

Parallelize per package tasks

Is your feature request related to a problem? Please describe.

There are a few tasks which run per package. Currently we use Promise.all which doesn't actually perform parallel processing.

Describe the solution you'd like

Abstract Promise.all usage for parallelization helper, and explore worker threads.

Setup end-to-end test with example monorepo

Is your feature request related to a problem? Please describe.

We need a way to test monodeploy including the publish stage, without actually publishing to npm.

Describe the solution you'd like

Run a mock registry in docker.

Support prepend changelog option

Is your feature request related to a problem? Please describe.

Monodeploy v1 used Lerna which prepended the CHANGELOG.md file with the latest changes via conventional changelog. As of the latest commit in next/v2 (monodeploy v2), a changeset file can be generated containing the new changelog additions, but this data is not automatically added to the changelog file.

Describe the solution you'd like

A CLI flag --prepend-changelog <filename> which when specified will read the <filename> and prepend the file with the changelog data from the changeset. Perhaps it can be added after a comment marker to support a header, similar to the all contributors bot.

An in-range update of babel7 is breaking the build 🚨

There have been updates to the babel7 monorepo:

    • The devDependency @babel/core was updated from 7.4.5 to 7.5.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

This monorepo update includes releases of one or more dependencies which all belong to the babel7 group definition.

babel7 is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).
  • βœ… ci/circleci: website: Your tests passed on CircleCI! (Details).

FAQ and help

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


Your Greenkeeper Bot 🌴

An in-range update of memfs is breaking the build 🚨

The devDependency memfs was updated from 2.15.4 to 2.15.5.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

memfs is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: website: CircleCI is running your tests (Details).
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).

Release Notes for v2.15.5

2.15.5 (2019-07-16)

Bug Fixes

Commits

The new version differs by 16 commits.

  • da19549 chore(release): 2.15.5 [skip ci]
  • 2314dad fix: check for process (#396)
  • af3f4e8 chore(deps): update dependency @types/node to v10.14.12
  • f163c06 chore(deps): update dependency @semantic-release/git to v7.0.16
  • 1766d90 chore(deps): update dependency @semantic-release/git to v7.0.15
  • dd37ed1 chore(deps): update semantic-release monorepo
  • 3c0c532 chore(deps): update dependency @semantic-release/npm to v5.1.12
  • d39eebc chore(deps): update semantic-release monorepo
  • 32d36df chore(deps): update dependency @types/node to v10.14.10
  • 664f373 chore(deps): update dependency tslint to v5.18.0
  • 37a165e chore(deps): update dependency ts-node to v8.3.0
  • 8b9b00c fix: check for process
  • 8f88a71 chore(deps): update dependency prettier to v1.18.2
  • 746f1a3 chore(deps): update dependency pretty-quick to v1.11.1
  • 6858247 chore(deps): update dependency @types/node to v10.14.9

There are 16 commits in total.

See the full diff

FAQ and help

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


Your Greenkeeper Bot 🌴

An in-range update of eslint-plugin-jest is breaking the build 🚨

The devDependency eslint-plugin-jest was updated from 22.5.1 to 22.6.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

eslint-plugin-jest is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).
  • βœ… ci/circleci: website: Your tests passed on CircleCI! (Details).

Release Notes for v22.6.0

22.6.0 (2019-05-22)

Features

Commits

The new version differs by 9 commits.

  • 14d83ef feat(rules): add no-commented-out rule (#262)
  • 83ff198 chore: migrate no-jest-import to typescript (#259)
  • 718c08c chore: upgrade @typescript-eslint
  • ca2aa27 chore: port lowercase-name to TypeScript (#258)
  • 3df0058 chore(ci): run danger with lts version of node
  • 48e3a59 chore: precompile with babel (#257)
  • 8670804 chore: bump deps
  • 05eb11a chore: fix lint error
  • dff6446 docs: link to eslint-plugin-jest-formatting

See the full diff

FAQ and help

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


Your Greenkeeper Bot 🌴

Support option to auto-commit package.json and changelog changes

Is your feature request related to a problem? Please describe.

Right now you have to manually commit the changelog.md + yarn.lock + package.json changes and then manually push the changes.

Describe the solution you'd like

An opt-in way to "auto-commit" relevant changed files. If persisting versions, the yarn.lock will change, and so we likely need to do a re-install after running monodeploy (a project.install at the end). Not sure how this interacts with deduping.

Use monodeploy to deploy monodeploy

Is your feature request related to a problem? Please describe.

Now that Monodeploy v2 is out, it's the perfect tool to deploy itself as it is itself organized as a monorepo.

Describe the solution you'd like

The current release workflow is tied to Monodeploy 1 tag creation. Because of the tag structure (i.e. @scope/package@version instead of v{version}, that path is now unused. We should add a path that uses Monodeploy to deploy newer versions of itself going forward.

Auto publish to GitHub releases with changelogs

Is your feature request related to a problem? Please describe.

GitHub releases will show the pushed git tags, however if we also create a "release" we can add additional changelog information. It's just another source of info that's easy to access.

An in-range update of docusaurus is breaking the build 🚨

The devDependency docusaurus was updated from 1.11.1 to 1.12.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

docusaurus is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: website: Your tests failed on CircleCI (Details).
  • βœ… ci/circleci: build: Your tests passed on CircleCI! (Details).
  • βœ… ci/circleci: test: Your tests passed on CircleCI! (Details).
  • βœ… ci/circleci: lint: Your tests passed on CircleCI! (Details).

FAQ and help

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


Your Greenkeeper Bot 🌴

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating @typescript-eslint/parser in /yarn.lock:
Couldn't find any versions for "monodeploy-types" that matches "workspace:packages/types"

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

Increase minimum node version to v14 LTS

Is your feature request related to a problem? Please describe.

At v14, we can use optional chaining and null coalesce without the babel plugins. We can keep transpiling light. Also reduces overhead of setting up something like matrix tests with GitHub actions.

Auto generate API docs

Is your feature request related to a problem? Please describe.

Auto-generate API docs from source code.

Support prereleases

I'm so glad i found this - finally a nice release management tool that is designed to be compatible with yarn berry. Finally a chance to say goodbye to lerna and stop relying on some ugly patches πŸ˜„
Thanks for open-sourcing this.
I'm very hyped for this project and i think it will soon gain some deserved recognition.

What i'm really missing at this point is support for pre-releasing packages.

I have main and next branches. next is a default branch and any commits merged there trigger a pre-release, something like lerna version --conventional-commits --conventional-prerelease --no-changelog --preid=next.
Prereleases would be tagged as <pkg>@x.x.x-next.x and published to NPM with next distribution tag (#223).
I don't want to generate changelog for preleaseses and spam the repository with release commit messages, so i would skip --persist-versions in that case.

When the state of the next branch is ready to become a production release, I merge next branch into main. This would trigger a standard workflow: create tag, write changelog, bump packages, commit, publish to NPM as latest, publish github releases. Basically what this tool does out of the box and equivalent of lerna version --conventional-commits --conventional-graduate --create-release github.

monodeploy is already very useful and i started migrating some minor project, but If you could add support for mentioned scenario, this would be my tool of choice for releasing every monorepo πŸš€

An in-range update of eslint-plugin-prettier is breaking the build 🚨

The devDependency eslint-plugin-prettier was updated from 3.1.0 to 3.1.1.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

eslint-plugin-prettier is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).
  • βœ… ci/circleci: website: Your tests passed on CircleCI! (Details).

Commits

The new version differs by 17 commits.

  • cb2d4b3 Build: update package.json and changelog for v3.1.1
  • 8a793eb build(deps-dev): bump eslint from 6.3.0 to 6.4.0
  • 88c3f6c build(deps-dev): bump eslint-config-prettier from 6.2.0 to 6.3.0
  • 5f9fbc1 build(deps-dev): bump eslint-config-prettier from 6.0.0 to 6.2.0
  • 746b66d build(deps-dev): bump eslint from 6.2.2 to 6.3.0
  • 97eedb4 build(deps-dev): bump eslint from 6.1.0 to 6.2.2
  • afef9d1 build(deps-dev): bump eslint from 6.0.1 to 6.1.0
  • 0360a84 build(deps-dev): bump mocha from 6.1.4 to 6.2.0
  • 9eceb68 build(deps): [security] bump lodash from 4.17.11 to 4.17.14
  • 1385310 Fix: When forcing the JS parser, use the modern name (#212)
  • bca77e6 Add eslint 6 to test matrix (#210)
  • 4c069bd build(deps-dev): bump eslint-config-prettier from 5.0.0 to 6.0.0
  • 60bb22f build(deps-dev): bump eslint-config-prettier from 4.3.0 to 5.0.0
  • a183560 build(deps-dev): bump prettier from 1.18.0 to 1.18.2
  • 0cad479 build(deps-dev): bump prettier from 1.17.1 to 1.18.0

There are 17 commits in total.

See the full diff

FAQ and help

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


Your Greenkeeper Bot 🌴

Execute pre-lifecycle hooks for all workspaces, before publishing any single workspace

Is your feature request related to a problem? Please describe.

The "pre" lifecycle hooks can be used for build verification prior to publish. If publishing 100 packages, if 1 package's verification fails, we may want to short-circuit the publish, and not publish any package.

Describe the solution you'd like

Add a flag to control this operating mode.

In this new mode: run all "pre" hooks together, publish all packages together, then run all post hooks together.

An in-range update of eslint-plugin-jest is breaking the build 🚨

The devDependency eslint-plugin-jest was updated from 22.7.2 to 22.8.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

eslint-plugin-jest is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).
  • βœ… ci/circleci: website: Your tests passed on CircleCI! (Details).

Release Notes for v22.8.0

22.8.0 (2019-07-15)

Features

Commits

The new version differs by 3 commits.

  • e292cb8 chore: refresh lockfile (#300)
  • dd4bbaf feat(rules): no-duplicate-hooks (#298)
  • a3a6dca chore(docs): fix up eslint logo (#299)

See the full diff

FAQ and help

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


Your Greenkeeper Bot 🌴

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating husky in /yarn.lock:
Couldn't find any versions for "monodeploy-types" that matches "workspace:packages/types"

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating eslint-config-prettier in /yarn.lock:
https://registry.yarnpkg.com/monodeploy-types: Not found

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

An in-range update of regenerator-runtime is breaking the build 🚨

The devDependency regenerator-runtime was updated from 0.13.2 to 0.13.3.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

regenerator-runtime is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: website: CircleCI is running your tests (Details).
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).

FAQ and help

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


Your Greenkeeper Bot 🌴

Support publishing multiple workspaces with distinct changelogs and version strategies

Is your feature request related to a problem? Please describe.

Monodeploy v1 (Lerna) applied the same version strategy to all modified packages. This creates a failure scenario where if a publish fails, and an unrelated package is then published successfully, the newer CI run won't automatically publish the failed package (it should "catch up").

Describe the solution you'd like

Read commits + diffs together to build a map of Workspace-><Commit,Files Modified>. Use this to determine version strategies, and to write changelogs.

Dependabot can't resolve your JavaScript dependency files

Dependabot can't resolve your JavaScript dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Error whilst updating @babel/core in /yarn.lock:
https://registry.yarnpkg.com/monodeploy-types: Not found

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

Option to disable publishing to npm and using npm as the source of truth

Is your feature request related to a problem? Please describe.

If we could bypass npm, we can use monodeploy for monorepos that aren't strictly npm packages.

Describe the solution you'd like

A disable-npm flag.

Describe alternatives you've considered

Don't use monodeploy for these use cases.

Additional context

To manage terraform monorepo.

Add configuration file support

Is your feature request related to a problem? Please describe.

As we're adding more and more features to monodeploy, the amount of CLI flags is becoming... impressive. This makes using monodeploy bit hard if you want to use the flags because you end up writing out so many. It also makes the set of options passed in a bit hard to read.

Describe the solution you'd like

We should implement some sort of configuration file support. The params fed through this config file would be superseded by anything passed via the CLI. This would allow you to easily set up your monodeploy options without having to type a dozen flags.

Describe alternatives you've considered

Writing out all the flags, all the time. :(

Additional context

Some thoughts to consider:

  • What format(s) should be use?
  • Should we enforce a strict schema?
  • Should we provide some sort of init command to seed a basic config file?
  • Should we version config files in case the future holds schema changes?

Support specifying sibling packages in peerDependencies

Is your feature request related to a problem? Please describe.

Monodeploy v1 only replaces * version specifiers in dev dependencies. We should support all dependency types.

Describe the solution you'd like

Replace * in optional and peer dependencies.

Support auto-setting base branch to commit associated with latest tag

Is your feature request related to a problem? Please describe.

Building on master after failed attempts should auto-correct and publish any packages that need to be published.

Describe the solution you'd like

Support a mode to determine the base commit from the latest tag.

Additional context

Potential race condition concerns? I'd add a disclaimer that the consumer should take care of locks. In a later version we can always add some locking support, but not critical. (For jenkins it's very easy to add a lock)

Support generating individual changelog files per workspace

Is your feature request related to a problem? Please describe.

Currently we generate one combined changelog file in the project root. Some projects in the wild use individual changelogs per package of the monorepo. We should support this.

Describe the solution you'd like

A flag to make the changelog path relative to the workspace cwd.

An in-range update of all-contributors-cli is breaking the build 🚨

The devDependency all-contributors-cli was updated from 6.7.0 to 6.8.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

all-contributors-cli is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • ❌ ci/circleci: website: CircleCI is running your tests (Details).
  • ❌ ci/circleci: build: Your tests failed on CircleCI (Details).

Release Notes for v6.8.0

6.8.0 (2019-07-16)

Features

  • Make markdownlint ignore generated contributors table (#194) (42bc241)
Commits

The new version differs by 3 commits.

  • 42bc241 feat: Make markdownlint ignore generated contributors table (#194)
  • 6932adb docs: add cezaraugusto as a contributor (#193)
  • 49657e3 docs(README): spec link fix (#192)

See the full diff

FAQ and help

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


Your Greenkeeper Bot 🌴

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.