Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-hatch_nodejs_version for 
openSUSE:Factory checked in at 2026-03-29 20:01:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-hatch_nodejs_version (Old)
 and      /work/SRC/openSUSE:Factory/.python-hatch_nodejs_version.new.8177 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-hatch_nodejs_version"

Sun Mar 29 20:01:03 2026 rev:6 rq:1343426 version:0.4.0

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-hatch_nodejs_version/python-hatch_nodejs_version.changes
  2025-01-20 17:15:32.072565962 +0100
+++ 
/work/SRC/openSUSE:Factory/.python-hatch_nodejs_version.new.8177/python-hatch_nodejs_version.changes
        2026-03-29 20:01:32.735541366 +0200
@@ -1,0 +2,8 @@
+Sun Mar 29 12:26:17 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 0.4.0:
+  * ENH: Accept dev prerelease versions #26 (@minrk)
+  * chore: fix check-release workflow #30 (@agoose77)
+  * DOCS: drop installation link #24 (@agoose77)
+
+-------------------------------------------------------------------

Old:
----
  hatch_nodejs_version-0.3.2.tar.gz

New:
----
  hatch_nodejs_version-0.4.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-hatch_nodejs_version.spec ++++++
--- /var/tmp/diff_new_pack.BTWwM6/_old  2026-03-29 20:01:33.175559495 +0200
+++ /var/tmp/diff_new_pack.BTWwM6/_new  2026-03-29 20:01:33.175559495 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package python-hatch_nodejs_version
 #
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 %{?sle15_python_module_pythons}
 Name:           python-hatch_nodejs_version
-Version:        0.3.2
+Version:        0.4.0
 Release:        0
 Summary:        This package provides two Hatch plugins for nodejs
 License:        MIT

++++++ hatch_nodejs_version-0.3.2.tar.gz -> hatch_nodejs_version-0.4.0.tar.gz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/hatch_nodejs_version-0.3.2/.github/workflows/check-release.yml 
new/hatch_nodejs_version-0.4.0/.github/workflows/check-release.yml
--- old/hatch_nodejs_version-0.3.2/.github/workflows/check-release.yml  
2020-02-02 01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/.github/workflows/check-release.yml  
2020-02-02 01:00:00.000000000 +0100
@@ -1,29 +1,30 @@
 name: Check Release
 on:
   push:
-    branches: ["main"]
+    branches: ["*"]
   pull_request:
     branches: ["*"]
+  release:
+    types: [published]
+  schedule:
+    - cron: "0 0 * * *"
 
 jobs:
   check_release:
     runs-on: ubuntu-latest
     steps:
       - name: Checkout
-        uses: actions/checkout@v3
+        uses: actions/checkout@v4
       - name: Base Setup
         uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
-      - name: Install Dependencies
-        run: |
-          pip install -e .
       - name: Check Release
         uses: jupyter-server/jupyter_releaser/.github/actions/check-release@v2
         with:
-
           token: ${{ secrets.GITHUB_TOKEN }}
+          version_spec: next
 
       - name: Upload Distributions
-        uses: actions/upload-artifact@v3
+        uses: actions/upload-artifact@v4
         with:
-          name: jupyterlab_myst-releaser-dist-${{ github.run_number }}
+          name: hatch-nodejs-version-dist-${{ github.run_number }}
           path: .jupyter_releaser_checkout/dist
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/hatch_nodejs_version-0.3.2/.github/workflows/full-release.yml 
new/hatch_nodejs_version-0.4.0/.github/workflows/full-release.yml
--- old/hatch_nodejs_version-0.3.2/.github/workflows/full-release.yml   
2020-02-02 01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/.github/workflows/full-release.yml   
2020-02-02 01:00:00.000000000 +0100
@@ -12,6 +12,10 @@
       post_version_spec:
         description: "Post Version Specifier"
         required: false
+      # silent:
+      #   description: "Set a placeholder in the changelog and don't publish 
the release."
+      #   required: false
+      #   type: boolean
       since:
         description: "Use PRs with activity since this date or git reference"
         required: false
@@ -23,12 +27,10 @@
         description: "Comma separated list of steps to skip during Populate 
Release"
         required: false
 jobs:
-  full_release:
+  prep_release:
     runs-on: ubuntu-latest
     permissions:
-      # This is useful if you want to use PyPI trusted publisher
-      # and NPM provenance
-      id-token: write
+      contents: write
     steps:
       - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
 
@@ -36,27 +38,48 @@
         id: prep-release
         uses: jupyter-server/jupyter_releaser/.github/actions/prep-release@v2
         with:
-          token: ${{ secrets.ADMIN_GITHUB_TOKEN }}
+          token: ${{ secrets.GITHUB_TOKEN }}
           version_spec: ${{ github.event.inputs.version_spec }}
+          # silent: ${{ github.event.inputs.silent }}
           post_version_spec: ${{ github.event.inputs.post_version_spec }}
+          target: ${{ github.event.inputs.target }}
           branch: ${{ github.event.inputs.branch }}
           since: ${{ github.event.inputs.since }}
           since_last_stable: ${{ github.event.inputs.since_last_stable }}
 
+  publish_release:
+    needs: [prep_release]
+    runs-on: ubuntu-latest
+    environment: release
+    permissions:
+      id-token: write
+    steps:
+      - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
+
+      - uses: actions/create-github-app-token@v1
+        id: app-token
+        with:
+          app-id: ${{ vars.APP_ID }}
+          private-key: ${{ secrets.APP_PRIVATE_KEY }}
+
       - name: Populate Release
         id: populate-release
         uses: 
jupyter-server/jupyter_releaser/.github/actions/populate-release@v2
         with:
-          token: ${{ secrets.ADMIN_GITHUB_TOKEN }}
+          token: ${{ steps.app-token.outputs.token }}
+          target: ${{ github.event.inputs.target }}
           branch: ${{ github.event.inputs.branch }}
-          release_url: ${{ steps.prep-release.outputs.release_url }}
+          release_url: ${{ github.event.inputs.release_url }}
           steps_to_skip: ${{ github.event.inputs.steps_to_skip }}
 
       - name: Finalize Release
         id: finalize-release
-        uses: 
jupyter-server/jupyter-releaser/.github/actions/finalize-release@v2
+        env:
+          NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
+        uses: 
jupyter-server/jupyter_releaser/.github/actions/finalize-release@v2
         with:
-          token: ${{ secrets.ADMIN_GITHUB_TOKEN }}
+          token: ${{ steps.app-token.outputs.token }}
+          target: ${{ github.event.inputs.target }}
           release_url: ${{ steps.populate-release.outputs.release_url }}
 
       - name: "** Next Step **"
@@ -64,3 +87,9 @@
         run: |
           echo "Verify the final release"
           echo ${{ steps.finalize-release.outputs.release_url }}
+
+      - name: "** Failure Message **"
+        if: ${{ failure() }}
+        run: |
+          echo "Failed to Publish the Draft Release Url:"
+          echo ${{ steps.populate-release.outputs.release_url }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/hatch_nodejs_version-0.3.2/.github/workflows/prep-release.yml 
new/hatch_nodejs_version-0.4.0/.github/workflows/prep-release.yml
--- old/hatch_nodejs_version-0.3.2/.github/workflows/prep-release.yml   
2020-02-02 01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/.github/workflows/prep-release.yml   
2020-02-02 01:00:00.000000000 +0100
@@ -12,6 +12,10 @@
       post_version_spec:
         description: "Post Version Specifier"
         required: false
+      # silent:
+      #   description: "Set a placeholder in the changelog and don't publish 
the release."
+      #   required: false
+      #   type: boolean
       since:
         description: "Use PRs with activity since this date or git reference"
         required: false
@@ -22,6 +26,8 @@
 jobs:
   prep_release:
     runs-on: ubuntu-latest
+    permissions:
+      contents: write
     steps:
       - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
 
@@ -29,8 +35,9 @@
         id: prep-release
         uses: jupyter-server/jupyter_releaser/.github/actions/prep-release@v2
         with:
-          token: ${{ secrets.ADMIN_GITHUB_TOKEN }}
+          token: ${{ secrets.GITHUB_TOKEN }}
           version_spec: ${{ github.event.inputs.version_spec }}
+          # silent: ${{ github.event.inputs.silent }}
           post_version_spec: ${{ github.event.inputs.post_version_spec }}
           branch: ${{ github.event.inputs.branch }}
           since: ${{ github.event.inputs.since }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/hatch_nodejs_version-0.3.2/.github/workflows/publish-changelog.yml 
new/hatch_nodejs_version-0.4.0/.github/workflows/publish-changelog.yml
--- old/hatch_nodejs_version-0.3.2/.github/workflows/publish-changelog.yml      
1970-01-01 01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/.github/workflows/publish-changelog.yml      
2020-02-02 01:00:00.000000000 +0100
@@ -0,0 +1,34 @@
+name: "Publish Changelog"
+on:
+  release:
+    types: [published]
+
+  workflow_dispatch:
+    inputs:
+      branch:
+        description: "The branch to target"
+        required: false
+
+jobs:
+  publish_changelog:
+    runs-on: ubuntu-latest
+    environment: release
+    steps:
+      - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
+
+      - uses: actions/create-github-app-token@v1
+        id: app-token
+        with:
+          app-id: ${{ vars.APP_ID }}
+          private-key: ${{ secrets.APP_PRIVATE_KEY }}
+
+      - name: Publish changelog
+        id: publish-changelog
+        uses: 
jupyter-server/jupyter_releaser/.github/actions/publish-changelog@v2
+        with:
+          token: ${{ steps.app-token.outputs.token }}
+          branch: ${{ github.event.inputs.branch }}
+
+      - name: "** Next Step **"
+        run: |
+          echo "Merge the changelog update PR: ${{ 
steps.publish-changelog.outputs.pr_url }}"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/hatch_nodejs_version-0.3.2/.github/workflows/publish-release.yml 
new/hatch_nodejs_version-0.4.0/.github/workflows/publish-release.yml
--- old/hatch_nodejs_version-0.3.2/.github/workflows/publish-release.yml        
2020-02-02 01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/.github/workflows/publish-release.yml        
2020-02-02 01:00:00.000000000 +0100
@@ -15,27 +15,34 @@
 jobs:
   publish_release:
     runs-on: ubuntu-latest
+    environment: release
     permissions:
-      # This is useful if you want to use PyPI trusted publisher
-      # and NPM provenance
       id-token: write
     steps:
       - uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
 
+      - uses: actions/create-github-app-token@v1
+        id: app-token
+        with:
+          app-id: ${{ vars.APP_ID }}
+          private-key: ${{ secrets.APP_PRIVATE_KEY }}
+
       - name: Populate Release
         id: populate-release
         uses: 
jupyter-server/jupyter_releaser/.github/actions/populate-release@v2
         with:
-          token: ${{ secrets.ADMIN_GITHUB_TOKEN }}
+          token: ${{ steps.app-token.outputs.token }}
           branch: ${{ github.event.inputs.branch }}
           release_url: ${{ github.event.inputs.release_url }}
           steps_to_skip: ${{ github.event.inputs.steps_to_skip }}
 
       - name: Finalize Release
         id: finalize-release
-        uses: 
jupyter-server/jupyter-releaser/.github/actions/finalize-release@v2
+        env:
+          NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
+        uses: 
jupyter-server/jupyter_releaser/.github/actions/finalize-release@v2
         with:
-          token: ${{ secrets.ADMIN_GITHUB_TOKEN }}
+          token: ${{ steps.app-token.outputs.token }}
           release_url: ${{ steps.populate-release.outputs.release_url }}
 
       - name: "** Next Step **"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/hatch_nodejs_version-0.3.2/.github/workflows/tests.yml 
new/hatch_nodejs_version-0.4.0/.github/workflows/tests.yml
--- old/hatch_nodejs_version-0.3.2/.github/workflows/tests.yml  2020-02-02 
01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/.github/workflows/tests.yml  2020-02-02 
01:00:00.000000000 +0100
@@ -18,19 +18,18 @@
     runs-on: ubuntu-latest
     strategy:
       matrix:
-        python-version: ["3.7", "3.8", "3.9", "3.10"]
+        python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
 
     steps:
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
       - name: Set up Python ${{ matrix.python-version }}
-        uses: actions/setup-python@v4
+        uses: actions/setup-python@v5
         with:
           python-version: ${{ matrix.python-version }}
+          cache: 'pip' # caching pip dependencies
       - name: Install dependencies
         run: |
-          python -m pip install --upgrade pip
-          pip install -e .
-          pip install pytest
+          pip install -e . --group test
       - name: Test with pytest
         run: |
           pytest
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hatch_nodejs_version-0.3.2/.pre-commit-config.yaml 
new/hatch_nodejs_version-0.4.0/.pre-commit-config.yaml
--- old/hatch_nodejs_version-0.3.2/.pre-commit-config.yaml      2020-02-02 
01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/.pre-commit-config.yaml      2020-02-02 
01:00:00.000000000 +0100
@@ -1,20 +1,20 @@
 repos:
--   repo: https://github.com/pre-commit/pre-commit-hooks
+  - repo: https://github.com/pre-commit/pre-commit-hooks
     rev: v2.3.0
     hooks:
-    -   id: check-yaml
-    -   id: end-of-file-fixer
-    -   id: trailing-whitespace
--   repo: https://github.com/psf/black
-    rev: 22.8.0
+      - id: check-yaml
+      - id: end-of-file-fixer
+      - id: trailing-whitespace
+  - repo: https://github.com/psf/black
+    rev: 25.1.0
     hooks:
-    -   id: black
--   repo: https://github.com/pycqa/isort
-    rev: 5.10.1
+      - id: black
+  - repo: https://github.com/pycqa/isort
+    rev: 6.0.1
     hooks:
       - id: isort
         name: isort
--   repo: https://github.com/pycqa/flake8
-    rev: 5.0.4
+  - repo: https://github.com/pycqa/flake8
+    rev: 7.3.0
     hooks:
-    -   id: flake8
+      - id: flake8
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hatch_nodejs_version-0.3.2/CHANGELOG.md 
new/hatch_nodejs_version-0.4.0/CHANGELOG.md
--- old/hatch_nodejs_version-0.3.2/CHANGELOG.md 2020-02-02 01:00:00.000000000 
+0100
+++ new/hatch_nodejs_version-0.4.0/CHANGELOG.md 2020-02-02 01:00:00.000000000 
+0100
@@ -2,6 +2,36 @@
 
 <!-- <START NEW CHANGELOG ENTRY> -->
 
+## 0.4.0
+
+([Full 
Changelog](https://github.com/agoose77/hatch-nodejs-version/compare/v0.3.2...14290e3cb9e53ebab6934901dc7f5220bafbf4b9))
+
+### Enhancements made
+
+- ENH: Accept dev prerelease versions 
[#26](https://github.com/agoose77/hatch-nodejs-version/pull/26) 
([@minrk](https://github.com/minrk))
+
+### Bugs fixed
+
+- chore: fix check-release workflow 
[#30](https://github.com/agoose77/hatch-nodejs-version/pull/30) 
([@agoose77](https://github.com/agoose77))
+
+### Documentation improvements
+
+- DOCS: drop installation link 
[#24](https://github.com/agoose77/hatch-nodejs-version/pull/24) 
([@agoose77](https://github.com/agoose77))
+
+### Other merged PRs
+
+- chore: update version info 
[#31](https://github.com/agoose77/hatch-nodejs-version/pull/31) 
([@agoose77](https://github.com/agoose77))
+- chore: update CI 
[#29](https://github.com/agoose77/hatch-nodejs-version/pull/29) 
([@agoose77](https://github.com/agoose77))
+- feat: use dependency-groups 
[#28](https://github.com/agoose77/hatch-nodejs-version/pull/28) 
([@agoose77](https://github.com/agoose77))
+
+### Contributors to this release
+
+([GitHub contributors page for this 
release](https://github.com/agoose77/hatch-nodejs-version/graphs/contributors?from=2023-09-06&to=2025-07-24&type=c))
+
+[@agoose77](https://github.com/search?q=repo%3Aagoose77%2Fhatch-nodejs-version+involves%3Aagoose77+updated%3A2023-09-06..2025-07-24&type=Issues)
 | 
[@minrk](https://github.com/search?q=repo%3Aagoose77%2Fhatch-nodejs-version+involves%3Aminrk+updated%3A2023-09-06..2025-07-24&type=Issues)
+
+<!-- <END NEW CHANGELOG ENTRY> -->
+
 ## 0.3.2
 
 ([Full 
Changelog](https://github.com/agoose77/hatch-nodejs-version/compare/v0.3.0...4d3c73d2f4e5ac927274dc810351bc0be95ef224))
@@ -19,5 +49,3 @@
 ([GitHub contributors page for this 
release](https://github.com/agoose77/hatch-nodejs-version/graphs/contributors?from=2022-09-21&to=2023-09-06&type=c))
 
 
[@agoose77](https://github.com/search?q=repo%3Aagoose77%2Fhatch-nodejs-version+involves%3Aagoose77+updated%3A2022-09-21..2023-09-06&type=Issues)
 | 
[@blink1073](https://github.com/search?q=repo%3Aagoose77%2Fhatch-nodejs-version+involves%3Ablink1073+updated%3A2022-09-21..2023-09-06&type=Issues)
 | 
[@vikramaditya91](https://github.com/search?q=repo%3Aagoose77%2Fhatch-nodejs-version+involves%3Avikramaditya91+updated%3A2022-09-21..2023-09-06&type=Issues)
-
-<!-- <END NEW CHANGELOG ENTRY> -->
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hatch_nodejs_version-0.3.2/PKG-INFO 
new/hatch_nodejs_version-0.4.0/PKG-INFO
--- old/hatch_nodejs_version-0.3.2/PKG-INFO     2020-02-02 01:00:00.000000000 
+0100
+++ new/hatch_nodejs_version-0.4.0/PKG-INFO     2020-02-02 01:00:00.000000000 
+0100
@@ -1,20 +1,21 @@
-Metadata-Version: 2.1
+Metadata-Version: 2.4
 Name: hatch-nodejs-version
-Version: 0.3.2
+Version: 0.4.0
 Summary: Hatch plugin for versioning from a package.json file
 Project-URL: Homepage, https://github.com/agoose77/hatch-nodejs-version
 Project-URL: Issue Tracker, 
https://github.com/agoose77/hatch-nodejs-version/issues
 Project-URL: Source Code, https://github.com/agoose77/hatch-nodejs-version
+Author: Frédéric Collonval
 Author-email: Angus Hollands <[email protected]>
 License: MIT
 License-File: LICENSE.txt
 Classifier: Framework :: Hatch
-Classifier: Programming Language :: Python :: 3.7
-Classifier: Programming Language :: Python :: 3.8
 Classifier: Programming Language :: Python :: 3.9
 Classifier: Programming Language :: Python :: 3.10
 Classifier: Programming Language :: Python :: 3.11
-Requires-Python: >=3.7
+Classifier: Programming Language :: Python :: 3.12
+Classifier: Programming Language :: Python :: 3.13
+Requires-Python: >=3.9
 Requires-Dist: hatchling>=0.21.0
 Description-Content-Type: text/markdown
 
@@ -34,7 +35,6 @@
 
 **Table of Contents**
 
-- [Installation](#installation)
 - [Global dependency](#global-dependency)
 - [Version source](#version-source)
 - [Metadata hook](#metadata-hook)
@@ -95,6 +95,7 @@
 - `minor`
 - `patch`
 - `pre-release`
+- `dev-release`
 
 e.g. `1.2.3-rc0`.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hatch_nodejs_version-0.3.2/README.md 
new/hatch_nodejs_version-0.4.0/README.md
--- old/hatch_nodejs_version-0.3.2/README.md    2020-02-02 01:00:00.000000000 
+0100
+++ new/hatch_nodejs_version-0.4.0/README.md    2020-02-02 01:00:00.000000000 
+0100
@@ -14,7 +14,6 @@
 
 **Table of Contents**
 
-- [Installation](#installation)
 - [Global dependency](#global-dependency)
 - [Version source](#version-source)
 - [Metadata hook](#metadata-hook)
@@ -75,6 +74,7 @@
 - `minor`
 - `patch`
 - `pre-release`
+- `dev-release`
 
 e.g. `1.2.3-rc0`.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/hatch_nodejs_version-0.3.2/hatch_nodejs_version/__init__.py 
new/hatch_nodejs_version-0.4.0/hatch_nodejs_version/__init__.py
--- old/hatch_nodejs_version-0.3.2/hatch_nodejs_version/__init__.py     
2020-02-02 01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/hatch_nodejs_version/__init__.py     
2020-02-02 01:00:00.000000000 +0100
@@ -1,4 +1,4 @@
 # SPDX-FileCopyrightText: 2022-present Angus Hollands <[email protected]>
 #
 # SPDX-License-Identifier: MIT
-from ._version import __version__
+from ._version import __version__  # noqa:  F401
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/hatch_nodejs_version-0.3.2/hatch_nodejs_version/_version.py 
new/hatch_nodejs_version-0.4.0/hatch_nodejs_version/_version.py
--- old/hatch_nodejs_version-0.3.2/hatch_nodejs_version/_version.py     
2020-02-02 01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/hatch_nodejs_version/_version.py     
2020-02-02 01:00:00.000000000 +0100
@@ -1,4 +1,4 @@
 # SPDX-FileCopyrightText: 2022-present Angus Hollands <[email protected]>
 #
 # SPDX-License-Identifier: MIT
-__version__ = "0.3.2"
+__version__ = "0.4.0"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/hatch_nodejs_version-0.3.2/hatch_nodejs_version/hooks.py 
new/hatch_nodejs_version-0.4.0/hatch_nodejs_version/hooks.py
--- old/hatch_nodejs_version-0.3.2/hatch_nodejs_version/hooks.py        
2020-02-02 01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/hatch_nodejs_version/hooks.py        
2020-02-02 01:00:00.000000000 +0100
@@ -3,8 +3,8 @@
 # SPDX-License-Identifier: MIT
 from hatchling.plugin import hookimpl
 
-from .version_source import NodeJSVersionSource
 from .metadata_source import NodeJSMetadataHook
+from .version_source import NodeJSVersionSource
 
 
 @hookimpl
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/hatch_nodejs_version-0.3.2/hatch_nodejs_version/metadata_source.py 
new/hatch_nodejs_version-0.4.0/hatch_nodejs_version/metadata_source.py
--- old/hatch_nodejs_version-0.3.2/hatch_nodejs_version/metadata_source.py      
2020-02-02 01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/hatch_nodejs_version/metadata_source.py      
2020-02-02 01:00:00.000000000 +0100
@@ -7,11 +7,13 @@
 import os.path
 import re
 import urllib.parse
-from typing import Any, Union
+from typing import Any
 
 from hatchling.metadata.plugin.interface import MetadataHookInterface
 
-AUTHOR_PATTERN = r"^(?P<name>[^<(]+?)?[ \t]*(?:<(?P<email>[^>(]+?)>)?[ 
\t]*(?:\((?P<url>[^)]+?)\)|$)"
+AUTHOR_PATTERN = (
+    r"^(?P<name>[^<(]+?)?[ \t]*(?:<(?P<email>[^>(]+?)>)?[ 
\t]*(?:\((?P<url>[^)]+?)\)|$)"
+)
 REPOSITORY_PATTERN = r"^(?:(gist|bitbucket|gitlab|github):)?(.*?)$"
 REPOSITORY_TABLE = {
     "gitlab": "https://gitlab.com";,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/hatch_nodejs_version-0.3.2/hatch_nodejs_version/version_source.py 
new/hatch_nodejs_version-0.4.0/hatch_nodejs_version/version_source.py
--- old/hatch_nodejs_version-0.3.2/hatch_nodejs_version/version_source.py       
2020-02-02 01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/hatch_nodejs_version/version_source.py       
2020-02-02 01:00:00.000000000 +0100
@@ -7,22 +7,44 @@
 
 from hatchling.version.source.plugin.interface import VersionSourceInterface
 
+PRE_PATTERN = r"""
+        (?P<{prefix}pre_l>(a|b|c|rc|alpha|beta|pre|preview))
+        [-.]?
+        (?P<{prefix}pre_n>[0-9]+)?
+
+"""
+DEV_PATTERN = r"""
+        dev
+        [-.]?
+        (?P<{prefix}dev_n>[0-9]+)?
+"""
+
 # The Python-aware NodeJS version regex
 # This is very similar to `packaging.version.VERSION_PATTERN`, with a few 
changes:
 # - Don't accept underscores
 # - Only support four-component release, prerelease, and build segments
 # - Require - to indicate prerelease
-NODE_VERSION_PATTERN = r"""
+NODE_VERSION_PATTERN = rf"""
     (?P<major>[0-9]+)                             # major
     \.
     (?P<minor>[0-9]+)                             # minor
     \.
     (?P<patch>[0-9]+)                             # patch
-    (?P<pre>                                      # pre-release
+    (?:
+      (?P<pre_only>                               # pre-release    
+        -
+        {PRE_PATTERN.format(prefix="pre_only_")}
+      ) | 
+      (?P<dev_only>                               # dev
         -
-        (?P<pre_l>(a|b|c|rc|alpha|beta|pre|preview))
-        [-\.]?
-        (?P<pre_n>[0-9]+)?
+        {DEV_PATTERN.format(prefix="dev_only_")}
+      ) |
+      (?P<pre_dev>                                # pre-release and dev    
+        -
+        {PRE_PATTERN.format(prefix="pre_dev_")}
+        \.
+        {DEV_PATTERN.format(prefix="pre_dev_")}
+      )
     )?
     (?:
        \+
@@ -40,7 +62,7 @@
 
 # The NodeJS-aware Python version regex
 # This is very similar to `packaging.version.VERSION_PATTERN`, with a few 
changes:
-# - Only support four-component release, prerelease, and build segments
+# - Only support five-component release, prerelease, dev, and build segments
 PYTHON_VERSION_PATTERN = r"""
    v?
    (?:
@@ -50,12 +72,17 @@
        \.
        (?P<patch>[0-9]+)                           # patch
        (?P<pre>                                    # pre-release
-           [-_\.]?
+           [-_.]?
            (?P<pre_l>(alpha|beta|preview|a|b|c|rc|pre))
-           [-_\.]?
+           [-_.]?
            (?P<pre_n>[0-9]+)?
        )?
-       (?:
+       (?P<dev>
+           [-_.]?
+           dev
+           (?P<dev_n>[0-9]+)
+       )?
+       (?:                                         # local version number
            \+
            (?P<local>
                 [0-9A-Za-z][0-9A-Za-z-_]*          # non-hyphen/dash leading 
identifier
@@ -105,16 +132,31 @@
         if match is None:
             raise ValueError(f"Version {version!r} did not match regex")
 
-        parts = ["{major}.{minor}.{patch}".format_map(match)]
+        groups = {}
+        for key, value in match.groupdict().items():
+            key = re.sub("pre_dev_|pre_only_|dev_only_", "", key)
+            if key not in groups:
+                groups[key] = value
+            elif value is not None:
+                groups[key] = value
+
+        del match
+        parts = ["{major}.{minor}.{patch}".format_map(groups)]
+
+        if groups["pre_only"] or groups["pre_dev"]:
+            if groups["pre_n"] is None:
+                parts.append("{pre_l}".format_map(groups))
+            else:
+                parts.append("{pre_l}{pre_n}".format_map(groups))
 
-        if match["pre"]:
-            if match["pre_n"] is None:
-                parts.append("{pre_l}".format_map(match))
+        if groups["dev_only"] or groups["pre_dev"]:
+            if groups["dev_n"] is None:
+                parts.append("dev0")
             else:
-                parts.append("{pre_l}{pre_n}".format_map(match))
+                parts.append("dev{dev_n}".format_map(groups))
 
-        if match["build"]:
-            parts.append("+{build}".format_map(match))
+        if groups["build"]:
+            parts.append("+{build}".format_map(groups))
 
         return "".join(parts)
 
@@ -137,6 +179,12 @@
             else:
                 parts.append("-{pre_l}{pre_n}".format_map(match))
 
+        if match["dev"]:
+            if match["pre"]:
+                parts.append(".dev{dev_n}".format_map(match))
+            else:
+                parts.append("-dev{dev_n}".format_map(match))
+
         if match["local"]:
             parts.append("+{local}".format_map(match))
         return "".join(parts)
@@ -166,5 +214,5 @@
         data["version"] = self.python_version_to_node(version)
         with open(path, "w") as f:
             json.dump(data, f, indent=4)
-            if raw_data.endswith('\n'):
-                f.write('\n')
+            if raw_data.endswith("\n"):
+                f.write("\n")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hatch_nodejs_version-0.3.2/pyproject.toml 
new/hatch_nodejs_version-0.4.0/pyproject.toml
--- old/hatch_nodejs_version-0.3.2/pyproject.toml       2020-02-02 
01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/pyproject.toml       2020-02-02 
01:00:00.000000000 +0100
@@ -7,25 +7,23 @@
 description = "Hatch plugin for versioning from a package.json file"
 authors = [
     {name = "Angus Hollands", email = "[email protected]"},
+    {name = "Frédéric Collonval" },
 ]
 dependencies = [
     "hatchling>=0.21.0"
 ]
-requires-python = ">= 3.7"
+requires-python = ">= 3.9"
 readme = "README.md"
 license = {text = "MIT"}
 classifiers = [
   "Framework :: Hatch",
-  "Programming Language :: Python :: 3.7",
-  "Programming Language :: Python :: 3.8",
   "Programming Language :: Python :: 3.9",
   "Programming Language :: Python :: 3.10",
   "Programming Language :: Python :: 3.11",
+  "Programming Language :: Python :: 3.12",
+  "Programming Language :: Python :: 3.13",
 ]
 dynamic = ["version"]
-
-[project.optional-dependencies]
-
 [project.entry-points.hatch]
 nodejs = "hatch_nodejs_version.hooks"
 
@@ -34,6 +32,9 @@
 "Issue Tracker" = "https://github.com/agoose77/hatch-nodejs-version/issues";
 "Source Code" = "https://github.com/agoose77/hatch-nodejs-version";
 
+[dependency-groups]
+test = ["pytest>=7.0"]
+
 [tool.hatch.version]
 path = "hatch_nodejs_version/_version.py"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hatch_nodejs_version-0.3.2/tests/__init__.py 
new/hatch_nodejs_version-0.4.0/tests/__init__.py
--- old/hatch_nodejs_version-0.3.2/tests/__init__.py    2020-02-02 
01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/tests/__init__.py    2020-02-02 
01:00:00.000000000 +0100
@@ -1,4 +1,3 @@
 # SPDX-FileCopyrightText: 2022-present Angus Hollands <[email protected]>
 #
 # SPDX-License-Identifier: MIT
-import pytest
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hatch_nodejs_version-0.3.2/tests/conftest.py 
new/hatch_nodejs_version-0.4.0/tests/conftest.py
--- old/hatch_nodejs_version-0.3.2/tests/conftest.py    2020-02-02 
01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/tests/conftest.py    2020-02-02 
01:00:00.000000000 +0100
@@ -4,11 +4,11 @@
 # SPDX-License-Identifier: MIT
 import errno
 import os
+import pathlib
 import shutil
 import stat
 import tempfile
 from contextlib import contextmanager
-import pathlib
 
 import pytest
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/hatch_nodejs_version-0.3.2/tests/test_metadata_config.py 
new/hatch_nodejs_version-0.4.0/tests/test_metadata_config.py
--- old/hatch_nodejs_version-0.3.2/tests/test_metadata_config.py        
2020-02-02 01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/tests/test_metadata_config.py        
2020-02-02 01:00:00.000000000 +0100
@@ -1,9 +1,10 @@
 # SPDX-FileCopyrightText: 2022-present Angus Hollands <[email protected]>
 #
 # SPDX-License-Identifier: MIT
-import pytest
 import json
 
+import pytest
+
 from hatch_nodejs_version.metadata_source import NodeJSMetadataHook
 
 TRIVIAL_PYPROJECT_CONTENTS = """
@@ -170,9 +171,11 @@
     def test_authors_accepted_as_strings(self, project):
         original_package_content = json.loads(TRIVIAL_PACKAGE_CONTENTS)
         updated_package_content = original_package_content.copy()
-        author_as_string = f"{original_package_content['author']['name']} " \
-                           f"<{original_package_content['author']['email']}>"
-        updated_package_content['author'] = author_as_string
+        author_as_string = (
+            f"{original_package_content['author']['name']} "
+            f"<{original_package_content['author']['email']}>"
+        )
+        updated_package_content["author"] = author_as_string
         (project / "pyproject.toml").write_text(TRIVIAL_PYPROJECT_CONTENTS)
         (project / 
"package.json").write_text(json.dumps(updated_package_content))
 
@@ -181,4 +184,3 @@
         metadata_source = NodeJSMetadataHook(project, config=config)
         metadata_source.update(metadata)
         assert metadata == TRIVIAL_EXPECTED_METADATA
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/hatch_nodejs_version-0.3.2/tests/test_version_config.py 
new/hatch_nodejs_version-0.4.0/tests/test_version_config.py
--- old/hatch_nodejs_version-0.3.2/tests/test_version_config.py 2020-02-02 
01:00:00.000000000 +0100
+++ new/hatch_nodejs_version-0.4.0/tests/test_version_config.py 2020-02-02 
01:00:00.000000000 +0100
@@ -14,6 +14,8 @@
     ("1.4.5-b0", "1.4.5b0"),
     ("1.4.5-c1", "1.4.5c1"),
     ("1.4.5-rc0", "1.4.5rc0"),
+    ("1.4.5-dev0", "1.4.5dev0"),
+    ("1.4.5-a1.dev0", "1.4.5a1dev0"),
     ("1.4.5-alpha0", "1.4.5alpha0"),
     ("1.4.5-beta0", "1.4.5beta0"),
     ("1.4.5-pre9", "1.4.5pre9"),

Reply via email to