meteocat 2.3.0 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/ISSUE_TEMPLATE/bug_report.md +8 -2
- package/.github/ISSUE_TEMPLATE/config.yml +7 -0
- package/.github/ISSUE_TEMPLATE/improvement.md +39 -0
- package/.github/ISSUE_TEMPLATE/new_function.md +41 -0
- package/.github/labels.yml +63 -0
- package/.github/workflows/autocloser.yaml +11 -9
- package/.github/workflows/close-on-label.yml +48 -0
- package/.github/workflows/force-sync-labels.yml +18 -0
- package/.github/workflows/release.yml +1 -31
- package/.github/workflows/sync-gitlab.yml +17 -4
- package/.github/workflows/sync-labels.yml +21 -0
- package/.releaserc +21 -0
- package/AUTHORS.md +1 -0
- package/CHANGELOG.md +58 -1
- package/README.md +81 -6
- package/custom_components/meteocat/__init__.py +51 -41
- package/custom_components/meteocat/config_flow.py +52 -3
- package/custom_components/meteocat/const.py +3 -0
- package/custom_components/meteocat/coordinator.py +188 -2
- package/custom_components/meteocat/manifest.json +1 -1
- package/custom_components/meteocat/options_flow.py +61 -3
- package/custom_components/meteocat/sensor.py +305 -254
- package/custom_components/meteocat/strings.json +61 -15
- package/custom_components/meteocat/translations/ca.json +67 -22
- package/custom_components/meteocat/translations/en.json +61 -15
- package/custom_components/meteocat/translations/es.json +61 -15
- package/custom_components/meteocat/version.py +1 -1
- package/custom_components/meteocat/weather.py +1 -1
- package/hacs.json +1 -1
- package/images/daily_forecast_2_alerts.png +0 -0
- package/images/regenerate_assets.png +0 -0
- package/images/setup_options.png +0 -0
- package/images/system_options.png +0 -0
- package/package.json +1 -1
- package/pyproject.toml +1 -1
- package/scripts/update_version.sh +22 -0
- package/.github/workflows/close-duplicates.yml +0 -57
|
@@ -6,8 +6,14 @@ labels: bug
|
|
|
6
6
|
assignees: ""
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
**IMPORTANT
|
|
10
|
-
|
|
9
|
+
⚠️ **IMPORTANT:**
|
|
10
|
+
- This template is **only** for reporting bugs, errors, or malfunctions.
|
|
11
|
+
- Do **not** use it for improvements → use the ♻️ Improvement request template.
|
|
12
|
+
- Do **not** use it for new features or new API data → use the 🆕 New function template.
|
|
13
|
+
|
|
14
|
+
❌ The template is mandatory; failure to follow it will result in the issue being **closed without assistance**.
|
|
15
|
+
|
|
16
|
+
Before opening a bug report, please search existing issues (including closed ones) and check the [Wiki - Troubleshooting](https://github.com/figorr/meteocat/wiki/Troubleshooting) page.
|
|
11
17
|
|
|
12
18
|
---
|
|
13
19
|
|
|
@@ -1 +1,8 @@
|
|
|
1
1
|
blank_issues_enabled: false
|
|
2
|
+
contact_links:
|
|
3
|
+
- name: 📖 Wiki - Troubleshooting
|
|
4
|
+
url: https://github.com/figorr/meteocat/wiki/Troubleshooting
|
|
5
|
+
about: Please check the Wiki before opening an issue.
|
|
6
|
+
- name: 💬 Discussions
|
|
7
|
+
url: https://github.com/figorr/meteocat/discussions
|
|
8
|
+
about: Ask questions, share ideas, or get help from the community.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "♻️ Improvement request"
|
|
3
|
+
about: Suggest an improvement or change to the current behavior of the integration
|
|
4
|
+
title: "[Improvement] "
|
|
5
|
+
labels: enhancement
|
|
6
|
+
assignees: ""
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
⚠️ **NOTE:** This template is for improvements or changes to the **current behavior of the integration**.
|
|
10
|
+
|
|
11
|
+
- It is **not** for bugs, errors, or malfunctions → use the 🐞 Bug report template.
|
|
12
|
+
- It is **not** for requesting new features or new API data → use the 🆕 New function template.
|
|
13
|
+
|
|
14
|
+
❌ Any request that does not follow these rules (e.g. bug reports or feature requests submitted here) will be **closed without assistance**.
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
### Current behavior
|
|
19
|
+
<!-- Describe the current behavior of the integration. -->
|
|
20
|
+
|
|
21
|
+
### Expected behavior
|
|
22
|
+
<!-- Describe what you would expect instead. -->
|
|
23
|
+
|
|
24
|
+
### Suggested solution
|
|
25
|
+
<!-- If you have an idea of how it could be improved, describe it here. -->
|
|
26
|
+
|
|
27
|
+
### Alternatives considered
|
|
28
|
+
<!-- Mention other approaches you thought about. -->
|
|
29
|
+
|
|
30
|
+
### Additional context
|
|
31
|
+
<!-- Add any other context, screenshots, or examples related to your request. -->
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
### Checklist
|
|
36
|
+
- [ ] I have searched existing issues (including closed ones).
|
|
37
|
+
- [ ] I have checked the [Wiki](https://github.com/figorr/meteocat/wiki).
|
|
38
|
+
- [ ] **I confirm this is not a bug or malfunction, but a request for improvement.**
|
|
39
|
+
- [ ] This request is not a duplicate.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "🆕 New function (API-based)"
|
|
3
|
+
about: Suggest a new function that uses data available from the Meteocat API
|
|
4
|
+
title: "[Function] "
|
|
5
|
+
labels: enhancement
|
|
6
|
+
assignees: ""
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
**IMPORTANT: Please check that the data you are requesting is available in the [Meteocat API Reference](https://apidocs.meteocat.gencat.cat/documentacio/).**
|
|
10
|
+
|
|
11
|
+
⚠️ **NOTE:** This template is for new functions or new API data for the **integration**.
|
|
12
|
+
|
|
13
|
+
- It is **not** for bugs, errors, or malfunctions → use the 🐞 Bug report template.
|
|
14
|
+
- It is **not** for requesting improvements or changes to the current behavior of the integration → use the ♻️ Improvement request template.
|
|
15
|
+
|
|
16
|
+
❌ Any request that does not follow these rules (e.g. bug reports or improvements requests submitted here) will be **closed without assistance**.
|
|
17
|
+
|
|
18
|
+
⚠️ **Note on API limits:** Each additional call to retrieve new or extra resources may cause the monthly API quota to be exhausted earlier than expected.
|
|
19
|
+
Keep in mind that the available limits are relatively low, especially with the basic plan.
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
### Describe the function
|
|
24
|
+
<!-- Clear and concise description of the new function you want to add. -->
|
|
25
|
+
|
|
26
|
+
### API endpoint / resource
|
|
27
|
+
<!-- Indicate which API endpoint/resource provides this data. -->
|
|
28
|
+
|
|
29
|
+
### Why is it useful?
|
|
30
|
+
<!-- Explain the value of this function for Home Assistant users. -->
|
|
31
|
+
|
|
32
|
+
### Additional context
|
|
33
|
+
<!-- Add any other context, screenshots, or examples related to your request. -->
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
### Checklist
|
|
38
|
+
- [ ] I have searched existing issues (including closed ones).
|
|
39
|
+
- [ ] I have checked the [Wiki](https://github.com/figorr/meteocat/wiki).
|
|
40
|
+
- [ ] **I have verified that the requested data is available in the [Meteocat API Reference](https://apidocs.meteocat.gencat.cat/documentacio/).**
|
|
41
|
+
- [ ] This request is not a duplicate.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
- name: breaking-change
|
|
2
|
+
color: d73a4a
|
|
3
|
+
description: Indicates a breaking change affecting upgrade or usage.
|
|
4
|
+
|
|
5
|
+
- name: bug
|
|
6
|
+
color: d73a4a
|
|
7
|
+
description: Something isn't working.
|
|
8
|
+
|
|
9
|
+
- name: documentation
|
|
10
|
+
color: 0075ca
|
|
11
|
+
description: Improvements or additions to documentation.
|
|
12
|
+
|
|
13
|
+
- name: duplicate
|
|
14
|
+
color: cfd3d7
|
|
15
|
+
description: This issue or pull request already exists.
|
|
16
|
+
|
|
17
|
+
- name: enhancement
|
|
18
|
+
color: a2eeef
|
|
19
|
+
description: New feature or request.
|
|
20
|
+
|
|
21
|
+
- name: first read
|
|
22
|
+
color: 0052cc
|
|
23
|
+
description: Mandatory reading before opening issues.
|
|
24
|
+
|
|
25
|
+
- name: good first issue
|
|
26
|
+
color: 7057ff
|
|
27
|
+
description: Good for newcomers.
|
|
28
|
+
|
|
29
|
+
- name: help wanted
|
|
30
|
+
color: 008672
|
|
31
|
+
description: Extra attention is needed.
|
|
32
|
+
|
|
33
|
+
- name: invalid
|
|
34
|
+
color: e4e669
|
|
35
|
+
description: This doesn't seem right.
|
|
36
|
+
|
|
37
|
+
- name: logs required
|
|
38
|
+
color: b60205
|
|
39
|
+
description: Logs are required.
|
|
40
|
+
|
|
41
|
+
- name: merged
|
|
42
|
+
color: b337b8
|
|
43
|
+
description: Solution merged.
|
|
44
|
+
|
|
45
|
+
- name: question
|
|
46
|
+
color: d876e3
|
|
47
|
+
description: Further information is requested.
|
|
48
|
+
|
|
49
|
+
- name: solved
|
|
50
|
+
color: 0e8a16
|
|
51
|
+
description: Solved issue.
|
|
52
|
+
|
|
53
|
+
- name: stale
|
|
54
|
+
color: ededed
|
|
55
|
+
description: Marked as stale due to inactivity.
|
|
56
|
+
|
|
57
|
+
- name: wiki
|
|
58
|
+
color: fbca04
|
|
59
|
+
description: Documented at Wiki.
|
|
60
|
+
|
|
61
|
+
- name: wontfix
|
|
62
|
+
color: ffffff
|
|
63
|
+
description: This will not be worked on.
|
|
@@ -3,23 +3,25 @@ name: Autocloser
|
|
|
3
3
|
on:
|
|
4
4
|
issues:
|
|
5
5
|
types: [opened, edited, reopened]
|
|
6
|
-
issue_comment:
|
|
7
|
-
types: [created]
|
|
8
6
|
|
|
9
7
|
jobs:
|
|
10
8
|
autoclose:
|
|
11
9
|
runs-on: ubuntu-latest
|
|
12
10
|
steps:
|
|
13
|
-
- name: Autoclose issues that did not follow
|
|
11
|
+
- name: Autoclose issues that did not follow any template
|
|
14
12
|
uses: roots/issue-closer@v1.1
|
|
15
13
|
with:
|
|
16
14
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
17
15
|
issue-close-message: >
|
|
18
|
-
👋 @${{ github.event.issue.user.login }} this issue was automatically closed because it did not follow the
|
|
19
|
-
[issue template](https://github.com/figorr/meteocat/issues/new/choose).
|
|
16
|
+
👋 @${{ github.event.issue.user.login }} this issue was automatically closed because it did not follow any of the required templates.
|
|
20
17
|
|
|
21
|
-
⚠️ Reminder:
|
|
22
|
-
|
|
23
|
-
|
|
18
|
+
⚠️ Reminder:
|
|
19
|
+
- Use the [🐞 Bug report template](https://github.com/figorr/meteocat/issues/new?template=bug_report.md) for errors or malfunctions.
|
|
20
|
+
- Use the [♻️ Improvement request template](https://github.com/figorr/meteocat/issues/new?template=improvement.md) for changes to current behavior.
|
|
21
|
+
- Use the [🆕 New function template](https://github.com/figorr/meteocat/issues/new?template=new_function.md) for API-based new features.
|
|
22
|
+
|
|
23
|
+
The template is mandatory; failure to use it will result in issue closure.
|
|
24
24
|
issue-pattern: >
|
|
25
|
-
(Describe the bug
|
|
25
|
+
(### Describe the bug|### To Reproduce|### Expected behavior|### System details|### Debug Logs|
|
|
26
|
+
I confirm this is not a bug or malfunction, but a request for improvement|
|
|
27
|
+
I have verified that the requested data is available)
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
name: Close on labels
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
issues:
|
|
5
|
+
types:
|
|
6
|
+
- labeled
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
close-and-comment:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
steps:
|
|
12
|
+
- name: Filter relevant labels
|
|
13
|
+
if: ${{ contains('wiki,solved,merged,duplicate', github.event.label.name) }}
|
|
14
|
+
id: check
|
|
15
|
+
run: echo "label=${{ github.event.label.name }}" >> $GITHUB_OUTPUT
|
|
16
|
+
|
|
17
|
+
- name: Determine message based on label
|
|
18
|
+
if: ${{ steps.check.outputs.label }}
|
|
19
|
+
id: message
|
|
20
|
+
run: |
|
|
21
|
+
case "${{ github.event.label.name }}" in
|
|
22
|
+
wiki)
|
|
23
|
+
echo "message=👋 This issue is covered in the [Meteocat Wiki](https://github.com/figorr/meteocat/wiki). Please check the documentation there for guidance." >> $GITHUB_OUTPUT
|
|
24
|
+
;;
|
|
25
|
+
solved)
|
|
26
|
+
echo "message=✅ This issue has been solved. Closing now." >> $GITHUB_OUTPUT
|
|
27
|
+
;;
|
|
28
|
+
merged)
|
|
29
|
+
echo "message=🔀 This issue has been merged manually. 'Merged manually in master [commit_hash]'." >> $GITHUB_OUTPUT
|
|
30
|
+
;;
|
|
31
|
+
duplicate)
|
|
32
|
+
echo "message=📄 This issue is marked as a duplicate. 'Closed as duplicate of #<issue_number>'." >> $GITHUB_OUTPUT
|
|
33
|
+
;;
|
|
34
|
+
esac
|
|
35
|
+
|
|
36
|
+
- name: Add comment
|
|
37
|
+
if: ${{ steps.check.outputs.label }}
|
|
38
|
+
uses: peter-evans/create-or-update-comment@v4
|
|
39
|
+
with:
|
|
40
|
+
token: ${{ secrets.GITHUB_TOKEN }}
|
|
41
|
+
issue-number: ${{ github.event.issue.number }}
|
|
42
|
+
body: ${{ steps.message.outputs.message }}
|
|
43
|
+
|
|
44
|
+
- name: Close issue if open
|
|
45
|
+
if: ${{ github.event.issue.state == 'open' && steps.check.outputs.label }}
|
|
46
|
+
uses: peter-evans/close-issue@v2
|
|
47
|
+
with:
|
|
48
|
+
issue-number: ${{ github.event.issue.number }}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
name: Force sync labels
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch: # solo se ejecuta manualmente
|
|
5
|
+
|
|
6
|
+
jobs:
|
|
7
|
+
labels:
|
|
8
|
+
runs-on: ubuntu-latest
|
|
9
|
+
steps:
|
|
10
|
+
- uses: actions/checkout@v4
|
|
11
|
+
|
|
12
|
+
- name: Force sync GitHub labels
|
|
13
|
+
uses: crazy-max/ghaction-github-labeler@v5
|
|
14
|
+
with:
|
|
15
|
+
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
16
|
+
yaml-file: .github/labels.yml
|
|
17
|
+
skip-delete: false # elimina labels que no estén en el YAML
|
|
18
|
+
dry-run: false # aplica cambios realmente
|
|
@@ -33,37 +33,7 @@ jobs:
|
|
|
33
33
|
git config user.name "semantic-release-bot"
|
|
34
34
|
git config user.email "jdcuartero@yahoo.es"
|
|
35
35
|
|
|
36
|
-
# Paso 5:
|
|
37
|
-
- name: Get next version
|
|
38
|
-
id: nextver
|
|
39
|
-
run: |
|
|
40
|
-
version=$(npx semantic-release --dry-run | grep "The next release version is" | awk '{print $NF}')
|
|
41
|
-
echo "next_version=$version" >> $GITHUB_OUTPUT
|
|
42
|
-
echo "Next version: $version"
|
|
43
|
-
|
|
44
|
-
# Paso 6: Actualizar archivos de versión antes del release
|
|
45
|
-
- name: Update version in files
|
|
46
|
-
run: |
|
|
47
|
-
version=${{ steps.nextver.outputs.next_version }}
|
|
48
|
-
|
|
49
|
-
# pyproject.toml
|
|
50
|
-
sed -i "s/^version = \".*\"/version = \"$version\"/" pyproject.toml
|
|
51
|
-
|
|
52
|
-
# manifest.json
|
|
53
|
-
jq --arg ver "$version" '.version = $ver' custom_components/meteocat/manifest.json > tmp.json && mv tmp.json custom_components/meteocat/manifest.json
|
|
54
|
-
|
|
55
|
-
# version.py
|
|
56
|
-
echo "__version__ = \"$version\"" > custom_components/meteocat/version.py
|
|
57
|
-
|
|
58
|
-
# __init__.py
|
|
59
|
-
sed -i "s/^__version__ = \".*\"/__version__ = \"$version\"/" custom_components/meteocat/__init__.py
|
|
60
|
-
|
|
61
|
-
# Commit con [skip ci] para no reiniciar workflow
|
|
62
|
-
git add pyproject.toml custom_components/meteocat/manifest.json custom_components/meteocat/version.py custom_components/meteocat/__init__.py
|
|
63
|
-
git commit -m "chore: bump version to $version [skip ci]" || echo "No changes to commit"
|
|
64
|
-
git push origin master
|
|
65
|
-
|
|
66
|
-
# Paso 7: Ejecutar semantic-release (generación de release, changelog, assets)
|
|
36
|
+
# Paso 5: Ejecutar semantic-release (se encargará de actualizar versiones, changelog, y release)
|
|
67
37
|
- name: Run semantic-release
|
|
68
38
|
env:
|
|
69
39
|
GITHUB_TOKEN: ${{ secrets.WORKFLOW_TOKEN }}
|
|
@@ -3,6 +3,7 @@ name: Sync to GitLab
|
|
|
3
3
|
on:
|
|
4
4
|
release:
|
|
5
5
|
types: [published] # Se dispara al publicarse un release en GitHub
|
|
6
|
+
workflow_dispatch: # Permite ejecución manual desde la interfaz
|
|
6
7
|
|
|
7
8
|
jobs:
|
|
8
9
|
sync:
|
|
@@ -32,10 +33,22 @@ jobs:
|
|
|
32
33
|
# Paso 4: Comprobar divergencias en master
|
|
33
34
|
- name: Check for diverging commits
|
|
34
35
|
run: |
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
# Trae todas las ramas del remoto GitLab y crea referencias locales
|
|
37
|
+
git fetch gitlab +refs/heads/*:refs/remotes/gitlab/*
|
|
38
|
+
|
|
39
|
+
# Comprueba que la rama gitlab/master exista
|
|
40
|
+
if git show-ref --verify --quiet refs/remotes/gitlab/master; then
|
|
41
|
+
# Comprueba si GitLab master tiene commits que GitHub no tiene
|
|
42
|
+
if ! git merge-base --is-ancestor gitlab/master master; then
|
|
43
|
+
echo "❌ GitLab master tiene commits que GitHub no tiene. Revisar antes de sincronizar."
|
|
44
|
+
exit 1
|
|
45
|
+
else
|
|
46
|
+
echo "GitLab master está alineado con GitHub master ✅"
|
|
47
|
+
fi
|
|
48
|
+
else
|
|
49
|
+
echo "❌ La rama gitlab/master no se pudo encontrar localmente. Abortando."
|
|
50
|
+
exit 1
|
|
51
|
+
fi
|
|
39
52
|
|
|
40
53
|
# Paso 5: Push de commits y tags a GitLab
|
|
41
54
|
- name: Push commits and tags to GitLab
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
name: Sync labels
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
paths:
|
|
6
|
+
- .github/labels.yml
|
|
7
|
+
workflow_dispatch:
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
labels:
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
steps:
|
|
13
|
+
- uses: actions/checkout@v4
|
|
14
|
+
|
|
15
|
+
- name: Sync GitHub labels (safe)
|
|
16
|
+
uses: crazy-max/ghaction-github-labeler@v5
|
|
17
|
+
with:
|
|
18
|
+
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
19
|
+
yaml-file: .github/labels.yml
|
|
20
|
+
skip-delete: true # no elimina labels que no estén en el YAML
|
|
21
|
+
dry-run: false # aplica cambios realmente
|
package/.releaserc
CHANGED
|
@@ -9,6 +9,27 @@
|
|
|
9
9
|
"changelogFile": "CHANGELOG.md"
|
|
10
10
|
}
|
|
11
11
|
],
|
|
12
|
+
[
|
|
13
|
+
"@semantic-release/exec",
|
|
14
|
+
{
|
|
15
|
+
"prepareCmd": "bash ./scripts/update_version.sh ${nextRelease.version}"
|
|
16
|
+
}
|
|
17
|
+
],
|
|
18
|
+
[
|
|
19
|
+
"@semantic-release/git",
|
|
20
|
+
{
|
|
21
|
+
"assets": [
|
|
22
|
+
"pyproject.toml",
|
|
23
|
+
"custom_components/meteocat/manifest.json",
|
|
24
|
+
"custom_components/meteocat/version.py",
|
|
25
|
+
"custom_components/meteocat/__init__.py",
|
|
26
|
+
"CHANGELOG.md",
|
|
27
|
+
"package.json",
|
|
28
|
+
"package-lock.json"
|
|
29
|
+
],
|
|
30
|
+
"message": "chore(release): v${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"
|
|
31
|
+
}
|
|
32
|
+
],
|
|
12
33
|
"@semantic-release/npm",
|
|
13
34
|
"@semantic-release/github"
|
|
14
35
|
],
|
package/AUTHORS.md
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,60 @@
|
|
|
1
|
-
# [
|
|
1
|
+
# [3.1.0](https://github.com/figorr/meteocat/compare/v3.0.0...v3.1.0) (2025-09-27)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* fix unknown threshold translation ([6fa7964](https://github.com/figorr/meteocat/commit/6fa79644e3ebbdf9a44826f6071af6009cd2d02d))
|
|
7
|
+
* include Meteocat Card ([513d9ed](https://github.com/figorr/meteocat/commit/513d9ed50fcd9127ac64f0388ed1017db938f378))
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
### Features
|
|
11
|
+
|
|
12
|
+
* ✨ Add native sunrise and sunset sensors to Meteocat integration ([7bb70c6](https://github.com/figorr/meteocat/commit/7bb70c681c90773275e496f938f455c3688fb4c0))
|
|
13
|
+
|
|
14
|
+
## [3.0.0](https://github.com/figorr/meteocat/compare/v2.3.0...v3.0.0) (2025-09-14)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### ⚠️ BREAKING CHANGES
|
|
18
|
+
|
|
19
|
+
* Version **3.0.0 and later** introduces a **breaking change** in how entities are identified.
|
|
20
|
+
|
|
21
|
+
## ⚠️ What this affects
|
|
22
|
+
- This affects any update **from a version prior to 3.0.0** to **any version 3.x or later**.
|
|
23
|
+
- Entities now use **`town_id`** instead of `region_id` in their `unique_id`.
|
|
24
|
+
- This change allows multiple integration entries that share the same `region_id` but different towns.
|
|
25
|
+
|
|
26
|
+
### ✅ Recommended upgrade procedure
|
|
27
|
+
To avoid issues with duplicated or unavailable entities:
|
|
28
|
+
|
|
29
|
+
1. **Uninstall** the existing integration (v2.x).
|
|
30
|
+
2. **Restart** Home Assistant.
|
|
31
|
+
3. **Install v3.0.0 or later** and configure the integration again.
|
|
32
|
+
|
|
33
|
+
### 🚨 If you update directly
|
|
34
|
+
If you update without uninstalling first:
|
|
35
|
+
|
|
36
|
+
- Old entities will remain as **Unavailable**.
|
|
37
|
+
- New entities will be created (sometimes with a suffix like `2`).
|
|
38
|
+
- You may need to manually **remove old entities** and update your automations, dashboards, or scripts to point to the new entities.
|
|
39
|
+
|
|
40
|
+
### 📑 Additional notes
|
|
41
|
+
|
|
42
|
+
- This change affects all entity types, including **sensors, diagnostic sensors, and alerts**.
|
|
43
|
+
- Always backup your **Home Assistant configuration** before performing major upgrades.
|
|
44
|
+
|
|
45
|
+
ℹ️ More details:
|
|
46
|
+
- [README – Breaking changes](https://github.com/figorr/meteocat#-breaking-changes---upgrade-to-3x)
|
|
47
|
+
- [Wiki – Breaking changes](https://github.com/figorr/meteocat/wiki/Breaking-Changes)
|
|
48
|
+
|
|
49
|
+
### Features
|
|
50
|
+
|
|
51
|
+
* change unique_id to use town_id ([3a048ce](https://github.com/figorr/meteocat/commit/3a048ce48a0e1f3ee7642c28bbe7ac6e6e3fc298))
|
|
52
|
+
|
|
53
|
+
### Contributors:
|
|
54
|
+
- [mcasellas](https://github.com/mcasellas) – contributed [c505f27](https://github.com/figorr/meteocat/commit/c505f27) - Improve Catalan translations
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
## [2.3.0](https://github.com/figorr/meteocat/compare/v2.2.7...v2.3.0) (2025-09-10)
|
|
2
58
|
|
|
3
59
|
|
|
4
60
|
### Features
|
|
@@ -15,6 +71,7 @@
|
|
|
15
71
|
* update README ([9855939](https://github.com/figorr/meteocat/commit/98559398e6bae30e8e9c9ff2b2fe27409a3930bd))
|
|
16
72
|
* update repo files structure ([0778679](https://github.com/figorr/meteocat/commit/0778679d218a89e89bb18791f1245c5c9f7b188f))
|
|
17
73
|
|
|
74
|
+
|
|
18
75
|
## [2.2.7](https://github.com/figorr/meteocat/compare/v2.2.6...v2.2.7) (2025-08-29)
|
|
19
76
|
|
|
20
77
|
|
package/README.md
CHANGED
|
@@ -6,8 +6,9 @@
|
|
|
6
6
|
[](https://github.com/figorr/meteocat/actions/workflows/validate.yaml)
|
|
7
7
|
[](https://github.com/figorr/meteocat/actions/workflows/release.yml)
|
|
8
8
|

|
|
9
|
-

|
|
10
|
+

|
|
11
|
+
[](#-breaking-changes---upgrade-to-3x)
|
|
11
12
|
|
|
12
13
|
This is a project to obtain meteorological data from the Meteocat API inside the Home Assistant environment.
|
|
13
14
|
|
|
@@ -21,8 +22,40 @@ Commercial use of this project or the data obtained from the API is not allowed
|
|
|
21
22
|
|
|
22
23
|
This is a personal project.
|
|
23
24
|
|
|
24
|
-
Authors
|
|
25
|
-
- Figorr
|
|
25
|
+
**Authors:**
|
|
26
|
+
- [Figorr](https://github.com/figorr)
|
|
27
|
+
|
|
28
|
+
**Contributors:**
|
|
29
|
+
- [mcasellas](https://github.com/mcasellas) – contributed [c505f27](https://github.com/figorr/meteocat/commit/c505f27) - Improve Catalan translations
|
|
30
|
+
|
|
31
|
+
## ⚠️ Breaking changes - Upgrade to 3.0.0 or later coming from prior versions
|
|
32
|
+
|
|
33
|
+
Version **3.0.0 and later** introduces a **breaking change** in how entities are identified.
|
|
34
|
+
|
|
35
|
+
### ⚠️ What this affects
|
|
36
|
+
- This affects any update **from a version prior to 3.0.0** to **any version 3.x or later**.
|
|
37
|
+
- Entities now use **`town_id`** instead of `region_id` in their `unique_id`.
|
|
38
|
+
- This change allows multiple integration entries that share the same `region_id` but different towns.
|
|
39
|
+
|
|
40
|
+
### ✅ Recommended upgrade procedure
|
|
41
|
+
To avoid issues with duplicated or unavailable entities:
|
|
42
|
+
|
|
43
|
+
1. **Uninstall** the existing integration (v2.x).<br>
|
|
44
|
+
🔗 See [Uninstallation Guide](https://github.com/figorr/meteocat/wiki/Uninstallation) for the proper way of removing prior versions.
|
|
45
|
+
2. **Restart** Home Assistant.
|
|
46
|
+
3. **Install v3.0.0 or later** and configure the integration again.
|
|
47
|
+
|
|
48
|
+
### 🚨 If you update directly
|
|
49
|
+
If you update without uninstalling first:
|
|
50
|
+
|
|
51
|
+
- Old entities will remain as **Unavailable**.
|
|
52
|
+
- New entities will be created (sometimes with a suffix like `2`).
|
|
53
|
+
- You may need to manually **remove old entities** and update your automations, dashboards, or scripts to point to the new entities.
|
|
54
|
+
|
|
55
|
+
### 📑 Additional notes
|
|
56
|
+
|
|
57
|
+
- This change affects all entity types, including **sensors, diagnostic sensors, and alerts**.
|
|
58
|
+
- Always backup your **Home Assistant configuration** before performing major upgrades.
|
|
26
59
|
|
|
27
60
|
## Installation
|
|
28
61
|
|
|
@@ -35,7 +68,6 @@ Authors:
|
|
|
35
68
|
1. Click `+ Add Integration`
|
|
36
69
|
1. Search for `Meteocat` and follow the configuration instructions
|
|
37
70
|
|
|
38
|
-
|
|
39
71
|
#### HACS - Install from the store
|
|
40
72
|
1. Go to `HACS`
|
|
41
73
|
1. Search for `Meteocat` and add it to HACS
|
|
@@ -103,7 +135,50 @@ You will see three available options:
|
|
|
103
135
|
If for any reason some files in the `assets` folder (`towns.json`, `stations.json`, `variables.json`, `symbols.json`, or `stations_<town_id>.json`) are missing or outdated, you can regenerate them directly from the options menu.
|
|
104
136
|
> ℹ️ If the Meteocat API is not available at that moment, the integration will still start, and you can retry regeneration later.
|
|
105
137
|
|
|
106
|
-
|
|
138
|
+
### Accessing the Options Menu
|
|
139
|
+
|
|
140
|
+
You can access the Options Menu in two ways, both inside the integration:
|
|
141
|
+
|
|
142
|
+
- **Setup Options**
|
|
143
|
+
|
|
144
|
+

|
|
145
|
+
|
|
146
|
+
- **System Options**
|
|
147
|
+
|
|
148
|
+

|
|
149
|
+
|
|
150
|
+
Once you are inside, you will see the following options:
|
|
151
|
+
|
|
152
|
+

|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
## Uninstallation
|
|
156
|
+
|
|
157
|
+
To correctly uninstall the integration:
|
|
158
|
+
|
|
159
|
+
- If you are upgrading due to **breaking changes**, remove all configured entries from
|
|
160
|
+
**Settings > Devices & Services > Integrations**, restart Home Assistant, and reinstall the new version.
|
|
161
|
+
- If you want to **completely remove Meteocat**, after removing the entries and restarting, also uninstall the integration from **HACS > Integrations**.
|
|
162
|
+
|
|
163
|
+
👉 For detailed steps with screenshots, check the [Uninstallation Guide](https://github.com/figorr/meteocat/wiki/Uninstallation).
|
|
164
|
+
|
|
165
|
+
## Custom Meteocat Card available
|
|
166
|
+
|
|
167
|
+
Meteocat integration has its own weather card.
|
|
168
|
+
|
|
169
|
+
To install the card, please follow the instructions from its own repository, [🎫 Meteocat Card](https://github.com/figorr/meteocat-card).
|
|
170
|
+
|
|
171
|
+

|
|
172
|
+
|
|
173
|
+
# Documentation
|
|
174
|
+
|
|
175
|
+
For more detailed information about:
|
|
176
|
+
- Installation and configuration
|
|
177
|
+
- Usage examples
|
|
178
|
+
- Extra attributes in sensors
|
|
179
|
+
- Known issues and troubleshooting
|
|
180
|
+
|
|
181
|
+
please visit the [📖 Meteocat Wiki](https://github.com/figorr/meteocat/wiki).
|
|
107
182
|
|
|
108
183
|
# Contributing
|
|
109
184
|
|