Skip to content

Feature: Different Configuration Environments #99

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

Open
2 tasks done
Triavanicus opened this issue Dec 30, 2024 · 1 comment
Open
2 tasks done

Feature: Different Configuration Environments #99

Triavanicus opened this issue Dec 30, 2024 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@Triavanicus
Copy link

Before You Begin

Before proceeding, please make sure to follow these steps:

  • I have checked for similar feature requests in the project's issue tracker
    to avoid duplicates.
  • I have searched existing issues to see if this feature has been discussed
    before.

Feature Details

Create a way to manage different rules for different environments, as some licenses have different requirements on whether you are using them, or distributing them, and someone or a company may want a way to manage which licenses are used during which development phase.

Describe the solution you'd like

Have the ability to create keys to manage different environments within a configuration file, similar to how tox may configure it: [tool.licensecheck] vs [tool.licensecheck.env_name].

Example configuration:

[tool.licensecheck]
additional_envs = ["dev"]
using = "PEP631"
fail_licenses = ["mpl", "lgpl", "gpl"]

[tool.licensecheck.dev]
using = "PEP631:dev"
# overrides the base on only the changed attributes, and would still fail "gpl"
ignore_licenses = ["mpl", "lgpl"]
ignore_packages = ["textual-serve"]

Running it without any arguments would result in adding an additional column that states under which of the environments licensecheck fails, with it being empty for the base environment (and the column omitted if it is the only environment) and the name of the other environments.

Describe alternatives you've considered

Currently, the workaround is to run licensecheck multiple times with different arguments to get all of the validation (which is also acceptable, but it would be nicer to manage it all in a config file under its configuration).

Epilog

Thank you for taking time out of your day to review this request, and thank you for the product that you have already produced.

@Triavanicus Triavanicus added the enhancement New feature or request label Dec 30, 2024
@FredHappyface
Copy link
Member

Thanks for the issue and apologies for the delay in getting back to you on this.

I can definitely take a look at this but cannot give a timeframe for this feature as there's still a lot of documentation updates/ improvements to make and sadly this is a lower priority feature for the time being. Also, trying to keep the scope of this library as controlled as possible as I think it can become quite easy to spiral into a difficult-to-maintain mess

Cheers :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants