Skip to content

Commit 948f116

Browse files
committed
Merge in the main branch
2 parents 3d6c211 + 9967bae commit 948f116

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

81 files changed

+2949
-5240
lines changed

.github/dependabot.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: pip
4+
directory: "/"
5+
schedule:
6+
interval: weekly
7+
open-pull-requests-limit: 1
8+
groups:
9+
python:
10+
patterns: ["*"]
11+
- package-ecosystem: github-actions
12+
directory: "/"
13+
schedule:
14+
interval: weekly
15+
open-pull-requests-limit: 1

.github/workflows/build.yml

Lines changed: 0 additions & 21 deletions
This file was deleted.

.github/workflows/check_links.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: Check Links
2+
on:
3+
repository_dispatch:
4+
workflow_dispatch:
5+
schedule:
6+
- cron: "0 5 * * 2"
7+
jobs:
8+
check:
9+
runs-on: ubuntu-latest
10+
permissions:
11+
issues: write # required for peter-evans/create-issue-from-file
12+
steps:
13+
- uses: actions/checkout@v4
14+
- name: Install uv
15+
uses: astral-sh/setup-uv@v6
16+
- name: Build documentation
17+
run: uv run pyvec-docs build
18+
- name: Link Checker
19+
id: lychee
20+
uses: lycheeverse/lychee-action@v2
21+
with:
22+
args: build
23+
fail: false
24+
- name: Create Issue From File
25+
if: steps.lychee.outputs.exit_code != 0
26+
uses: peter-evans/create-issue-from-file@v5
27+
with:
28+
title: Link Checker Report
29+
content-filepath: ./lychee/out.md
30+
labels: broken links

.github/workflows/generate.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Generate
2+
on:
3+
push:
4+
branches:
5+
- master
6+
schedule:
7+
- cron: "0 4 * * *"
8+
jobs:
9+
build:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: actions/checkout@v4
13+
- name: Install uv
14+
uses: astral-sh/setup-uv@v6
15+
- name: Generate grants
16+
run: uv run pyvec-docs gen-grants
17+
env:
18+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
19+
- name: Generate boards
20+
run: uv run pyvec-docs gen-boards
21+
- name: Generate Twemoji
22+
run: uv run pyvec-docs gen-twemoji
23+
- name: Create PR
24+
uses: peter-evans/create-pull-request@v7
25+
with:
26+
token: ${{ secrets.GITHUB_TOKEN }}
27+
add-paths: docs
28+
commit-message: "update generated files"
29+
branch: automation/generate
30+
title: "Automated update of generated pages and other files"
31+
body: "For details, see [the docs](https://docs.pyvec.org/contributing.html#generovani-stranek-a-souboru) :book:"

.github/workflows/generate_grants.yml

Lines changed: 0 additions & 32 deletions
This file was deleted.

.github/workflows/test.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
name: Test
2+
on:
3+
push:
4+
pull_request:
5+
jobs:
6+
test:
7+
runs-on: ubuntu-latest
8+
steps:
9+
- uses: actions/checkout@v4
10+
- name: Install uv
11+
uses: astral-sh/setup-uv@v6
12+
- name: Test
13+
run: uv run pyvec-docs test
14+
- name: Build documentation
15+
run: uv run pyvec-docs build

.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,5 +103,11 @@ venv.bak/
103103
# mypy
104104
.mypy_cache/
105105

106+
# ruff
107+
.ruff_cache/
108+
106109
# scripts/lint_requirements.sh
107110
*-requirements.txt
111+
112+
# Lychee
113+
.lycheecache

.readthedocs.yml

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
version: 2
22
build:
3-
image: latest
3+
os: ubuntu-lts-latest
4+
tools:
5+
python: "3.12"
46
python:
5-
version: 3.7
67
install:
7-
- requirements: requirements.txt
8+
- method: pip
9+
path: .
810
sphinx:
9-
builder: html
10-
configuration: conf.py
11+
configuration: docs/conf.py
1112
fail_on_warning: true

CONTRIBUTING.rst

Lines changed: 48 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -13,29 +13,49 @@ Abyste něco změnili v textech, nemusíte nic instalovat. Obsah lze upravovat o
1313
Instalace
1414
---------
1515

16-
Když toho upravujete víc, nebo máte zálusk na nějaké složitější kejkle, je lepší mít materiály nainstalované na svém počítači. Projekt vyžaduje Python 3.7.
16+
Když toho upravujete víc, nebo máte zálusk na nějaké složitější kejkle, je lepší mít materiály nainstalované na svém počítači. Bude k tomu potřeba `uv <https://docs.astral.sh/uv/>`_:
1717

1818
#. Stáhněte projekt: ``git clone https://github.com/pyvec/docs.pyvec.org.git``
19-
#. Vytvořte si a aktivujte virtuální prostředí
20-
#. Nainstalujte do prostředí závislosti: ``python -m pip install -r requirements.txt``
19+
#. Přejděte do něj: ``cd docs.pyvec.org``
20+
21+
.. note::
22+
23+
O instalaci, včetně správy virtuálního prostředí, se postará
24+
``uv`` automaticky při prvním spuštění.
2125

2226
Běžná práce
2327
-----------
2428

25-
#. Ve virtuálním prostředí spusťte projekt: ``python -m sphinx-autobuild . _build``
29+
#. Spusťte projekt: ``uv run pyvec-docs watch``
2630
#. Otevřete si v prohlížeči `<http://127.0.0.1:8000>`_
2731
#. V editoru upravujete texty a v prohlížeči si kontrolujete výsledek
2832
#. Projekt zastavíte v terminálu pomocí :kbd:`Ctrl+C`
2933

34+
Další užitečné nástroje, např. na jednorázové sestavení nebo na
35+
:ref:`generování stránek <generate_files>`,
36+
najdete spuštěním ``pyvec-docs`` bez podpříkazu: ``uv run pyvec-docs``
37+
38+
39+
Markdown
40+
^^^^^^^^
41+
42+
Původně byla dokumentace psaná v reStructuredText. Nyní ale podporuje i Markdown. Asi zatím nebudeme přepisovat původní stránky, ale pokud chce někdo napsat něco nového, a vyhovoval by mu spíš Markdown, nechť klidně použije Markdown.
43+
44+
Kdyby s tím byl nějaký problém, tady je `návod na kombo Sphinx + MyST <https://docs.readthedocs.io/en/stable/guides/migrate-rest-myst.html>`__.
45+
3046
Emoji
3147
^^^^^
3248

33-
Při psaní můžete používat Emoji jako třeba |:cz:| nebo |:snake:|, ale nepište je přímo pomocí Unicode, ale za pomocí značek jako ``|:cz:|`` nebo ``|:snake:|``. Unicode znaky by se zobrazovaly na každém operačním systému jinak, ale tyto značky budou díky rozšíření `emojicodes <https://github.com/sphinx-contrib/emojicodes>`__ přeloženy na obrázky a ty se zobrazí vždy všem stejně. Mrkněte na `seznam podporovaných Emoji <https://sphinxemojicodes.readthedocs.io/>`__. Obrázky jsou z `Twemoji <https://twemoji.twitter.com/>`_.
49+
Při psaní můžete používat Emoji jako třeba |:cz:| nebo |:snake:|, ale nepište je přímo pomocí Unicode, ale za pomocí značek jako ``|:cz:|`` nebo ``|:snake:|``. Unicode znaky by se zobrazovaly na každém operačním systému jinak, ale tyto značky budou díky rozšíření `emojicodes <https://github.com/sphinx-contrib/emojicodes>`__ přeloženy na obrázky a ty se zobrazí vždy všem stejně. Mrkněte na `seznam podporovaných Emoji <https://sphinxemojicodes.readthedocs.io/>`__. Obrázky jsou z `Twemoji <https://github.com/twitter/twemoji>`_.
3450

3551
Slack
3652
^^^^^
3753

38-
Při psaní lze psát ``:slack:`#pyladies``` nebo i jenom ``:slack:`pyladies```, což vytvoří odkaz na kanál :slack:`#pyladies` na Pyvec Slacku. Funguje to díky vlastnímu rozšíření Sphinxu, které lze najít v souboru ``_extensions/slack.py``.
54+
Při psaní lze psát ``:slack:`#pyladies`` nebo i jenom ``:slack:`pyladies``, což vytvoří odkaz na kanál :slack:`#pyladies` na Pyvec Slacku. Funguje to díky vlastnímu rozšíření Sphinxu, které lze najít v souboru ``_extensions/slack.py``.
55+
56+
Všechny odkazy na kanál ``:slack:`#pyvec-board``, ať už je to ``:slack:`#pyvec-board`` nebo ``:slack:`#pyvec-board-2019-2021`` jsou automaticky předělány na odkaz na aktuální tajný kanál výboru. K určení správných roků se využívá `soubor boards.toml <https://github.com/pyvec/docs.pyvec.org/blob/master/src/pyvec_docs/boards.toml>`_.
57+
58+
.. _docs-pyvec-rtd:
3959

4060
ReadTheDocs
4161
-----------
@@ -56,28 +76,39 @@ Tento projekt se původně jmenoval ``pyvec-guide`` a proto se tak jmenuje i pro
5676
Verze Pythonu
5777
-------------
5878

59-
Nejnovější verze Pythonu, jakou ReadTheDocs podporují, je 3.7. Z toho důvodu ji vyžaduje i tento projekt. Nastavení je v souboru ``.readthedocs.yml`` (`dokumentace <https://docs.readthedocs.io/en/latest/config-file/v2.html>`_).
79+
Nejnovější verze Pythonu, jakou ReadTheDocs podporují, je 3.12. Z toho důvodu ji vyžaduje i tento projekt. Nastavení je v souboru ``.readthedocs.yml`` (`dokumentace <https://docs.readthedocs.io/en/latest/config-file/v2.html>`_).
6080

6181
Continuous Integration
6282
----------------------
6383

6484
Na repozitáři jsou zapojeny `GitHub Actions <https://github.com/pyvec/docs.pyvec.org/actions>`_. Kontrolka:
6585

66-
.. image:: https://github.com/pyvec/docs.pyvec.org/workflows/Main/badge.svg
86+
.. image:: https://github.com/pyvec/docs.pyvec.org/actions/workflows/test.yml/badge.svg
6787
:target: https://github.com/pyvec/docs.pyvec.org/actions
68-
:alt: Continuous Integration Status
88+
:alt: Continuous Integration Status (test)
6989

7090
CI je pouze informativní a nezabrání tomu, aby se hlavní větev dostala do ReadTheDocs.
7191

72-
.. _generate_grants:
92+
Kontrola rozbitých odkazů
93+
-------------------------
94+
95+
Na repozitáři je zapojená `GitHub Action <https://github.com/lycheeverse/lychee-action>`_, která jednou denně kontroluje, zda všechny odkazy fungují. Kontrolka:
96+
97+
.. image:: https://github.com/pyvec/docs.pyvec.org/actions/workflows/check_links.yml/badge.svg
98+
:target: https://github.com/pyvec/docs.pyvec.org/actions
99+
:alt: Continuous Integration Status (check links)
100+
101+
Dokonce by to mělo automaticky zakládat i issue, pokud to najde nějaký problém. V případě, že je potřeba ignorovat nějakou doménu nebo konkrétní odkaz, je možné to udělat v souboru ``lychee.toml``.
102+
103+
.. _generate_files:
73104

74-
Skript na generování zápisů hlasování o grantech
75-
------------------------------------------------
105+
Generování stránek a souborů
106+
----------------------------
76107

77-
V adresáři ``_scripts`` je skript ``generate_grants.py``, který:
108+
Některé stránky a soubory se generují automaticky pomocí skriptů. Tyto skripty se spouští pomocí `GitHub Actions <https://github.com/pyvec/docs.pyvec.org/actions>`_, konkrétně workflow ``generate.yml``. Tyto skripty se spouští jednou denně a generují soubory, které se pak posílají jako pull requesty do repozitáře, pokud vytvoří nějaké změny.
78109

79-
* se pomocí `GitHub Actions <https://github.com/pyvec/docs.pyvec.org/actions>`_ jednou denně spustí
80-
* vygeneruje soubor ``operations/grants.rst`` z dat na `pyvec/money <https://github.com/pyvec/money>`_ a ze šablony ``operations/grants.rst``
81-
* commitne a pushne jej přes Git do repozitáře.
110+
- Generuje se ``docs/operations/boards.rst`` ze `souboru boards.toml <https://github.com/pyvec/docs.pyvec.org/blob/master/src/pyvec_docs/boards.toml>`_ a ze šablony ``operations/boards.rst``.
111+
- Generuje se ``docs/operations/grants.rst`` z dat na `pyvec/money <https://github.com/pyvec/money>`_ a ze šablony ``operations/grants.rst``.
112+
- Generuje se ``docs/_static/twemoji.min.js``, abychom Twemoji měli lokálně a nemuseli se spoléhat na CDN.
82113

83-
Hlasování o grantech probíhá :ref:`pomocí reakcí <jak-hlasovani>` na GitHub Issues a tento skript hlasování archivuje sem do dokumentace pro účely jednoduššího vyhledávání, zálohy, kdyby se s `pyvec/money <https://github.com/pyvec/money>`_ něco stalo, a pro nějakou historickou evidenci. Kanonickým zdrojem pravdy ale zůstává hlasování přímo na GitHub Issues, toto je jen automatizovaný přepis.
114+
Kód pro generování je v ``src/pyvec_docs/cli.py``. Skripty jde pouštět např. ``uv run pyvec-docs gen-boards``.

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Copyright (c) 2019 Pyvec, z.s. <[email protected]>
1+
Copyright (c) 2025 Pyvec, z.s. <[email protected]>
22

33
Texty a obrázky materiálů jsou uvolněny pod licencí CC BY-SA 4.0
44
https://creativecommons.org/licenses/by-sa/4.0

0 commit comments

Comments
 (0)