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

Bump @nestjs/config from 3.3.0 to 4.0.0 #230

Merged
merged 1 commit into from
Jan 17, 2025

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jan 17, 2025

Bumps @nestjs/config from 3.3.0 to 4.0.0.

Release notes

Sourced from @​nestjs/config's releases.

Release 4.0.0

Breaking changes

The order in which configuration variables are read by the ConfigService#get method has been updated. The new order is:

  • Internal configuration (config namespaces and custom config files)
  • Validated environment variables (if validation is enabled and a schema is provided)
  • The process.env object

Previously, validated environment variables and the process.env object were read first, preventing them from being overridden by internal configuration. With this update, internal configuration will now always take precedence over environment variables.

Additionally, the ignoreEnvVars configuration option, which previously allowed disabling validation of the process.env object, has been deprecated. Instead, use the validatePredefined option (set to false to disable validation of predefined environment variables). Predefined environment variables refer to process.env variables that were set before the module was imported. For example, if you start your application with PORT=3000 node main.js, the PORT variable is considered predefined. However, variables loaded by the ConfigModule from a .env file are not classified as predefined.

A new skipProcessEnv option has also been introduced. This option allows you to prevent the ConfigService#get method from accessing the process.env object entirely, which can be helpful when you want to restrict the service from reading environment variables directly.

Changelog

  • chore: update config attributes to more self descriptive names (c2eaf04)
  • chore(deps): update nest monorepo to v11 (1c20713)
  • feat: order of reading variables, add skip predefined (c53c63c)
Commits
  • 163a4a8 chore(): release v4.0.0
  • c2eaf04 chore: update config attributes to more self descriptive names
  • ce18cb8 Merge branch 'master' into next
  • 49c13fc test: update integration test to use new dotenv-expand opts
  • a1225db chore: upgrade eslint, update deps, ci setup
  • 1c54dde Merge pull request #1919 from foxadb/refactor-missing-return-types
  • 6411b7d Merge pull request #1925 from nestjs/renovate/major-nest-monorepo
  • e9c8727 Merge pull request #1883 from nestjs/feat/skip-predefined-change-order
  • 94852a5 chore(deps): update dependency lint-staged to v15.4.1 (#1926)
  • 49eec57 chore(deps): update dependency lint-staged to v15.4.0 (#1924)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Summary by Sourcery

Enhancements:

  • Update the order in which configuration variables are read by the ConfigService#get method. Internal configuration now takes precedence over environment variables.

Bumps [@nestjs/config](https://github.com/nestjs/config) from 3.3.0 to 4.0.0.
- [Release notes](https://github.com/nestjs/config/releases)
- [Changelog](https://github.com/nestjs/config/blob/master/.release-it.json)
- [Commits](nestjs/config@3.3.0...4.0.0)

---
updated-dependencies:
- dependency-name: "@nestjs/config"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Copy link
Contributor Author

dependabot bot commented on behalf of github Jan 17, 2025

The following labels could not be found: dependencies.

Copy link

sourcery-ai bot commented Jan 17, 2025

Reviewer's Guide by Sourcery

This pull request bumps the @nestjs/config package from version 3.3.0 to 4.0.0. This upgrade includes changes to the order in which configuration variables are read, the deprecation of the ignoreEnvVars option, and the introduction of a new skipProcessEnv option.

Sequence diagram: Updated configuration variable resolution order in @nestjs/config v4.0.0

sequenceDiagram
    participant App as Application
    participant CS as ConfigService
    participant IC as Internal Config
    participant VE as Validated Env Vars
    participant PE as process.env

    Note over CS: New Resolution Order
    App->>+CS: get('key')
    CS->>+IC: Check internal config
    IC-->>-CS: Return if found
    CS->>+VE: Check validated env vars
    VE-->>-CS: Return if found
    CS->>+PE: Check process.env
    PE-->>-CS: Return if found
    CS-->>-App: Return resolved value
Loading

State diagram: Configuration options state changes in v4.0.0

stateDiagram-v2
    [*] --> ConfigModule

    state ConfigModule {
        [*] --> Options
        state Options {
            ignoreEnvVars: Deprecated
            validatePredefined: New
            skipProcessEnv: New
        }
    }

    note right of Options
        ignoreEnvVars replaced by
        validatePredefined option
    end note
Loading

Flow diagram: Configuration resolution process in @nestjs/config v4.0.0

flowchart TD
    A[Request config value] --> B{Check internal config}
    B -->|Found| C[Return internal config value]
    B -->|Not found| D{Check validated env vars}
    D -->|Found| E[Return validated env var value]
    D -->|Not found| F{Check process.env}
    F -->|Found| G[Return process.env value]
    F -->|Not found| H[Return undefined]

    style C fill:#90EE90
    style E fill:#ADD8E6
    style G fill:#FFB6C1
Loading

File-Level Changes

Change Details Files
Bumped the @nestjs/config package to version 4.0.0.
  • Updated the @nestjs/config dependency in package.json.
  • Updated the @nestjs/config dependency in package-lock.json.
  • Updated the @nestjs/config dependency in yarn.lock.
package.json
package-lock.json
yarn.lock

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time. You can also use
    this command to specify where the summary should be inserted.

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

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

We have skipped reviewing this pull request. It seems to have been created by a bot (hey, dependabot[bot]!). We assume it knows what it's doing!

@github-actions github-actions bot merged commit 30202d2 into develop Jan 17, 2025
2 of 4 checks passed
@github-actions github-actions bot deleted the dependabot/npm_and_yarn/nestjs/config-4.0.0 branch January 17, 2025 17:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants