Giter Site home page Giter Site logo

Comments (22)

marcalexiei avatar marcalexiei commented on June 2, 2024 2

have you tried giving it an input that does conform to the format?

It works: https://github.com/marcalexiei/commitlint-playground/actions/runs/8108167213/job/22160890870


In your package.json you are using v18 packages

https://github.com/ItsSunnyMonster/ruxel/blob/9709f3bdc30843d887146ae046d1cef583365f63/package.json#L3-L5

while on your run you GitHub action run you are installing commitlint@latest.
commitlint@latest is an alias for commitlint/cli so I think you got a version mismatch.
Could you try using packages all v19 packages?

image

from commitlint.

marcalexiei avatar marcalexiei commented on June 2, 2024 1

I tried this locally and it's working:

Screenshot 2024-02-29 at 20 36 34

I also setup a simple GitHub Action and I'm unable to reproduce the issue:

image

https://github.com/marcalexiei/commitlint-playground/actions/runs/8101865722/job/22143073353

from commitlint.

ItsSunnyMonster avatar ItsSunnyMonster commented on June 2, 2024

@marcalexiei have you tried giving it an input that does conform to the format?
I am experiencing a similar issue.
https://github.com/ItsSunnyMonster/ruxel/actions/runs/8092061505/job/22112127600?pr=37

from commitlint.

nkukard avatar nkukard commented on June 2, 2024

Here is how to reproduce the issue I'm reporting...

docker run  -it --rm alpine  /bin/sh

apk add npm git
npm install -g @commitlint/cli @commitlint/config-conventional
mkdir test
cd test
git init
git config --global user.email "[email protected]"
git config --global user.name "Your Name"
echo "test" > test.txt
git add test.txt
git commit -m "hello world"
echo "module.exports = {extends: ['@commitlint/config-conventional']}" > commitlint.config.js
commitlint --to HEAD

Here is the last few commands output...
Screenshot_20240306_084251

from commitlint.

JounQin avatar JounQin commented on June 2, 2024

Did you try latest https://github.com/conventional-changelog/commitlint/releases/tag/v19.0.3?

Global installation usage should have been fixed in v19.0.1.

from commitlint.

nkukard avatar nkukard commented on June 2, 2024

Did you try latest https://github.com/conventional-changelog/commitlint/releases/tag/v19.0.3?

Global installation usage should have been fixed in v19.0.1.

Yes, this was done 2 days ago. You can reproduce it right now following the above instructions.

from commitlint.

JounQin avatar JounQin commented on June 2, 2024

@nkukard I can't reproduce it with the issue steps.

from commitlint.

nkukard avatar nkukard commented on June 2, 2024

@nkukard I can't reproduce it with the issue steps.

Did you try the docker container reproducer and commands I pasted?

This is the official alpine image, I can't see how it cannot be reproducible.

Screenshot_20240308_063514

Screenshot_20240308_063532

Screenshot_20240308_063634

from commitlint.

nkukard avatar nkukard commented on June 2, 2024

For clarity sake this is the latest official alpine image...

latest: Pulling from library/alpine
Digest: sha256:c5b1261d6d3e43071626931fc004f70149baeba2c8ec672bd4f27761f8e1ad6b
Status: Image is up to date for alpine:latest
docker.io/library/alpine:latest

from commitlint.

JounQin avatar JounQin commented on June 2, 2024
// test.mjs
import globalDirectory from 'global-directory';

console.log(globalDirectory.npm.packages)
image

It's a upstream issue, please report to https://github.com/sindresorhus/global-directory instead.

And also, I recommend not using global usage any longer.


Besides, it should also occur on v18, doesn't it?

from commitlint.

JounQin avatar JounQin commented on June 2, 2024
image

It seems global-modules working as expected in this case, although it's not been maintained for a long time (6 years).

But AFAIK, stylelint is using global-modules instead of global-directory: https://github.com/stylelint/stylelint/blob/d2c8d0dd20924706c3075c9d208234c373a41f42/package.json#L177

@escapedcat Should we change to use global-modules or add it as another fallback?


IMO, we should drop global installation usage in next major version.

from commitlint.

nkukard avatar nkukard commented on June 2, 2024
commitlint --to HEAD

I'm very sure many people are using commitlint to lint commits with repositories that are not node based, how would dropping global installation usage affect that?

from commitlint.

JounQin avatar JounQin commented on June 2, 2024

@nkukard

OK, interesting, any idea to keep supporting global installation usage easily and maintainable?

from commitlint.

nkukard avatar nkukard commented on June 2, 2024

@nkukard

OK, interesting, any idea to keep supporting global installation usage easily and maintainable?

So basically to explain this use case , we have multiple docker containers that run in parallel against MR/PR's being submitted.

Each of the validation containers implements a specific type of check, for instance shellcheck, commitlint ... etc.

The repositories themselves can be anything, from perl libraries, to python libraries, to apps, to distribution packages, Ansible playbooks ... etc.

I'd say there is a valid use case for a global installation, if commitlint were to be installed during this process in the project top folder it would modify the status of the repository unless .node_modules and packages.json were added to .gitignore on every project. To be honest thinking of this makes me shudder.

from commitlint.

JounQin avatar JounQin commented on June 2, 2024

@nkukard

I'm not against to support global installation considering the users not using node primarily. I'm just trying to find a good way to support it. As you can see, global-directory works incorrectly and global-modules is really old. I may need to find more other libraries which support global installation usage like eslint, etc.

By the way, did you use commitlint v18 previously as global dependency? And does it work as expected?

from commitlint.

nkukard avatar nkukard commented on June 2, 2024

@nkukard

I'm not against to support global installation considering the users not using node primarily. I'm just trying to find a good way to support it. As you can see, global-directory works incorrectly and global-modules is really old. I may need to find more other libraries which support global installation usage like eslint, etc.

No probs.

By the way, did you use commitlint v18 previously as global dependency? And does it work as expected?

My CI/CD pipeline for commitlint started failing when v19 was released. It was working before that with v18.

I'm not sure if maybe another dep may of been updated as I very briefly tried installing <v19.0.0 and it failed in the same way.

I'm currently using export NODE_PATH=/usr/local/lib/node_modules as a workaround in this specific case.

from commitlint.

Related Issues (20)

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.