You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
38
38
@@ -48,11 +48,11 @@ jobs:
48
48
# If you wish to specify custom queries, you can do so here or in a config file.
49
49
# By default, queries listed here will override any specified in a config file.
50
50
# Prefix the list here with "+" to use these queries and those in the config file.
51
-
51
+
52
52
# Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
53
53
# queries: security-extended,security-and-quality
54
54
55
-
55
+
56
56
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
57
57
# If this step fails, then you should remove it and run the build manually (see below)
58
58
- name: Autobuild
@@ -61,7 +61,7 @@ jobs:
61
61
# ℹ️ Command-line programs to run using the OS shell.
62
62
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
63
63
64
-
# If the Autobuild fails above, remove it and uncomment the following three lines.
64
+
# If the Autobuild fails above, remove it and uncomment the following three lines.
65
65
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.
Thanks heaps for being interested in contributing to python-bibtexparser.
4
4
@@ -8,15 +8,16 @@ We are always looking for people to improve the library. Contributions include,
8
8
2. Providing bugfixing PRs
9
9
3. Implementing any of the issues or continuing any of the PRs labelled with `needs help` or `good first issue`.
10
10
11
-
### Some guidelines:
11
+
### Some guidelines
12
12
13
13
1. Be nice! Were all doing this in our free time; no one is obligated to do anything.
14
-
2. Add sufficient tests to your PRs
14
+
2. Add sufficient tests to your PRs.
15
15
3. Document your code.
16
16
4. Don't hesitate to ask questions.
17
17
18
18
### Version 1 vs version 2
19
-
Also note that there are currently two independent "default" branches:
19
+
20
+
Also note that there are currently two independent "default" branches:
20
21
First, `main`, where we maintain the `v2` of bibtexparser, which is a complete re-write and currently still in beta and not feature complete.
21
22
Second, `v1` where we maintain the stable `v1` version of bibtexparser. Note that on `v1` we accept only small, non-breaking changes and are planning to stop support as soon as `v2` reaches reasonable stability.
22
23
The two branches are never going to be merged anymore, thus if you want to change something for both versions, you will have to open two PRs.
@@ -25,8 +26,8 @@ Issues are labelled `v1` and `v2`, correspondingly.
25
26
26
27
### Dev-Dependencies, testing and linting on v2.
27
28
28
-
To install the dev dependencies, run `pip install -e .[test,lint,docs]` from within the cloned repository. Then:
29
+
To install the dev dependencies, run `pip install -e .[test,docs]` from within the cloned repository. Then:
29
30
30
31
- To test your code, run `pytest .`
31
-
- To lint your code (required for CI/CD to pass), run: `black bibtexparser tests docs && isort bibtexparser tests docs --profile black`
32
+
- To lint your code (enforces code style), run: `pre-commit run --all-files` (if you need to install pre-commit, run `pip install pre-commit`).
32
33
- To build and preview the docs, navigate into `docs` and run `make html`. Then open the `index.html` file in the `docs/build/html` folder.
Consult the documentation for a list of available middleware, parsing options and write-formatting options.
71
71
72
72
## V2 Architecture and Terminology
@@ -76,21 +76,21 @@ Consult the documentation for a list of available middleware, parsing options an
76
76
The architecture consists of the following components:
77
77
78
78
#### Library
79
-
Reflects the contents of a parsed bibtex files, including all comments, entries, strings, preamples and their metadata (e.g. order).
79
+
Reflects the contents of a parsed bibtex files, including all comments, entries, strings, preamples and their metadata (e.g. order).
80
80
81
81
#### A Splitter
82
82
Splits a bibtex string into basic blocks (Entry, String, Preamble, ...), with correspondingly split content (e.g. fields on Entry, key-value on String, ...).
83
-
The splitter aims to be forgiving when facing invalid bibtex: A line starting with a block definition (`@....`) ends the previous block, even if not yet every bracket is closed, failing the parsing of the previous block. Correspondingly, one block type is "ParsingFailedBlock".
83
+
The splitter aims to be forgiving when facing invalid bibtex: A line starting with a block definition (``@....``) ends the previous block, even if not yet every bracket is closed, failing the parsing of the previous block. Correspondingly, one block type is "ParsingFailedBlock".
84
84
85
85
#### Middleware
86
-
Middleware layers transform a library and its blocks, for example by decoding latex special characters, interpolating string references, resoling crossreferences or re-ordering blocks. Thus, the choice of middleware allows to customize parsing and writing to ones specific usecase. Note: Middlewares, by default, no not mutate their input, but return a modified copy.
86
+
Middleware layers transform a library and its blocks, for example by decoding latex special characters, interpolating string references, resoling crossreferences or re-ordering blocks. Thus, the choice of middleware allows to customize parsing and writing to ones specific usecase. Note: Middlewares, by default, no not mutate their input, but return a modified copy.
87
87
88
88
#### Writer
89
-
Writes the content of a bibtex library to a `.bib` file. Optional formatting parameters can be passed using a corresponding dedicated data structure.
89
+
Writes the content of a bibtex library to a ``.bib`` file. Optional formatting parameters can be passed using a corresponding dedicated data structure.
90
90
91
91
## About
92
92
93
-
Since 2022, `bibtexparser` is primarily written and maintained by Michael Weiss ([@MiWeiss](https://github.com/MiWeiss/)). In 2024, Tom de Geus ([@tdegeus](https://github.com/tdegeus)) joined as co-maintainer.
93
+
Since 2022, `bibtexparser` is primarily written and maintained by Michael Weiss ([@MiWeiss](https://github.com/MiWeiss/)). In 2024, Tom de Geus ([@tdegeus](https://github.com/tdegeus)) joined as co-maintainer.
94
94
95
95
Credits and thanks to the many contributors who helped creating this library, including
96
96
François Boulogne ([@sciunto](https://github.com/sciunto/), creator of the first version) and Olivier Mangin ([@omangin](https://github.com/omangin/), long-term contributor).
0 commit comments