Skip to content

Commit 8267203

Browse files
committed
Merge branch 'release/0.1.0'
2 parents 89bc7f3 + b574b14 commit 8267203

Some content is hidden

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

46 files changed

+4088
-1920
lines changed

CHANGELOG.md

Lines changed: 74 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,66 @@
22

33
----------------------------------------------------------------------------------------
44

5-
## 0.0.8 - Refactoring and new settings
5+
## Version [0.0.10] - Interface and template rewrite
6+
Released: 2024-04-23
7+
8+
This release introduces a new public interface for reading YAML template files, applying the template to a table (which now creates compiled table sections), and for writing compiled table sections to an Excel worksheet. In addition, with the `ReportBuilder` class a convenient high-level interface is introduced for creating (multi-tab) Excel reports from tables and table templates. Moreover, the YAML table templates have been partially redesigned, breaking backward compatibility.
9+
10+
### Added
11+
- The `TableTemplate` class serves as the representation of a YAML template file in Python. It provides methods for both loading a YAML template file and saving to a YAML template file.
12+
- When creating a `TableTemplate` instance, the template is checked for type errors. If type errors are detected, a `ValueError` is raised.
13+
- Similarly, when loading a template from a YAML file, a non-parseable YAML file or the presence of type errors will raise a `ValueError`.
14+
- The `TableTemplateSections` class provides methods for adding, removing, and changing the order of sections from a template.
15+
- The `TableTemplate` class, and the classes for the four table template sections, provide a `__str__` method for viewing the content of the template.
16+
- Added the `validate` module, which offers functions for validating YAML template file integrity, checking if data types in a template are correct, and confirming that the sections and parameters of a template are in accordance with the template specifications (which is refered to as the template schema).
17+
- Add a new template section type called "**label tag section**". This section resembles the "tag section" but offers the ability to specify a list of additional labels for further column filtering after tag matching. It's primarily designed for in-code template creation or updating of existing sections, where the labels are known or extracted from the data.
18+
- The column order of the "label tag section" is determined by the order of the labels in the template.
19+
- Introduced new functionality to the `xlsxreport` console script.
20+
- The command for generating a formatted Excel file is now `xlsxreport compile`.
21+
- Added an option to open the compiled Excel file using the `--reveal` flag.
22+
- The `xlsxreport appdir` command now reveals the location of the app directory.
23+
- Added an option to open the appdata directory in the file explorer using the `--reveal` flag.
24+
- Setting up the app directory can be accomplished with `xlsxreport appdir --setup` which creates the app directory and copies default report template files.
25+
- The `xlsxreport validate` command allows validating a YAML template file, with detected issues being printed to the console.
26+
- Added color highlighting to printed messages from command line scripts and improved printed message texts.
27+
28+
### Changed
29+
- (!) Changed how the `xlsxreport` console scripts works. Now all scripts are called with `xlsxreport` plus a specific command.
30+
- Renamed the Excel worksheet generated by the `xlsxreport compile` script from "Proteins" to "Report".
31+
- (!) Replaced the term "config" with "template" throughout the codebase.
32+
- (!) Replaced the template keyword "groups" with "sections" in YAML template files.
33+
- (!) Replaced the template keyword "args" with "settings" in YAML template files.
34+
- (!) Replaced the term "report template" with "table template", which refers to the YAML template file as well as its Python representation the `TableTemplate` class.
35+
- (!) Replaced the internally used term "TableSection" with "CompiledTableSection", to clearly distinguish between template and compiled table sections.
36+
- Renamed `writer.TableSectionWriter` to `writer.SectionWriter`.
37+
- Renamed `compiler.prepare_table_sections` to `compiler.prepare_compiled_sections`.
38+
- (!) Replaced the "tag sample section" category with a simpler "tag section".
39+
- The "tag" parameter of the "tag section" is used as a regular expression pattern instead of simply looking for an exact match. This change allows for more flexible matching of columns and makes the additional selection of samples via a "sample_extraction_tag" obsolete.
40+
- (!) Removed the `comparison_group` parameter from the **comparison section**, which is now identified by the simultaneous presence of the parameters "tag" and "columns".
41+
- (!) Renamed the template section parameter "conditional" to "conditional_format".
42+
- (!) Renamed the template section parameter "column_conditional" to "column_conditional_format".
43+
- Changed the default value of the "evaluate_log2_transformation" setting to False.
44+
- Changed the default value of the "write_supheader" setting to False.
45+
- When no supheader name is specified the supheader cells are not merged and no format is applied .
46+
- Changed the default format from `0` to the standard Excel format `General`.
47+
- When attempting to use an invalid format for compiling an Excel report, the compiler will now apply no format and issue a warning instead of raising an exception. This change ensures consistent behavior for both conditional and standard cell formats. This change is also reflected in the validation module. When an invalid format description is identified, it now creates an error with an error level ERROR instead of CRITICAL, indicating that the template could still be utilized to create an Excel format despite the encountered issue.
48+
- Updated the default templates "maxquant.yaml" and "fragpipe.yaml" to reflect the changes in the template schema and to improve the clarity of the generated Excel report.
49+
- `appdir.get_template_path` raises `FileNotFoundError` instead of returning `None` when the specified template does not exist.
50+
51+
### Removed
52+
- (!) Removed the `cassiopeia_report` command line script.
53+
- (!) Removed the `xlsxreport_setup` script.
54+
- (!) Removed `xlsxreport.writer.Datasheet` and `xlsxreport.writer.Reportbook`, which previously represented the public interface for creating a formatted Excel report.
55+
- (!) Removed the default templates "msreport_lfq_protein.yaml" and "cassiopeia.yaml".
56+
- (!) Removed the "sample_extraction_tag" parameter from the table template settings.
57+
58+
### Internal
59+
- Replaced the `appdirs` library with `platformdirs`, as `appdirs` is officially deprecated.
60+
61+
----------------------------------------------------------------------------------------
62+
63+
## Version [0.0.8] - Refactoring and new settings
64+
Released: 2023-11-22
665

766
### Changed
867
- `groups` in the yaml config file with the setting "border: True" will now always have
@@ -37,7 +96,8 @@
3796

3897
----------------------------------------------------------------------------------------
3998

40-
## 0.0.7 - Fix comparison group issue
99+
## Version [0.0.7] - Fix comparison group issue
100+
Released: 2023-10-11
41101

42102
### Fixes
43103
- Fixes a mix up of columns in comparison groups that was caused when an experiment
@@ -46,14 +106,16 @@
46106

47107
----------------------------------------------------------------------------------------
48108

49-
## 0.0.6 - Fix missing supheader
109+
## Version [0.0.6] - Fix missing supheader
110+
Released: 2023-03-14
50111

51112
### Fixes
52113
- Supheader not being written when a block contains only one column.
53114

54115
----------------------------------------------------------------------------------------
55116

56-
## 0.0.5 - Improvements for MsReport report generation
117+
## Version [0.0.5] - Improvements for MsReport report generation
118+
Released: 2023-01-27
57119

58120
### Changed
59121
- (!) Renamed console script "xlsx_report" to "xlsxreport"
@@ -72,21 +134,24 @@
72134

73135
----------------------------------------------------------------------------------------
74136

75-
## 0.0.4 - Group and hide remaining columns
137+
## Version [0.0.4] - Group and hide remaining columns
138+
Released: 2022-10-19
76139

77140
- Changes behavior of the "append_remaining_columns" option. Now the
78141
unspecified columns that are added to the end of the excel sheet
79142
are grouped and hidden.
80143

81144
----------------------------------------------------------------------------------------
82145

83-
## 0.0.3 - Installation fix
146+
## Version [0.0.3] - Installation fix
147+
Released: 2022-10-10
84148

85149
- Fixes issues of missing .yaml config files for installation.
86150

87151
----------------------------------------------------------------------------------------
88152

89-
## 0.0.2 - Adds remaining columns to report
153+
## Version [0.0.2] - Adds remaining columns to report
154+
Released: 2022-09-08
90155

91156
- Added option to add all unspecified columns to the end of the excel sheet.
92157
- Added documentation of the config file format.
@@ -98,6 +163,7 @@
98163

99164
----------------------------------------------------------------------------------------
100165

101-
## 0.0.1 - First functional version
166+
## Version [0.0.1] - First functional version
167+
Released: 2022-09-07
102168

103169
- Initial unstable version of XlsxWriter

CONFIG_FILE_DOCUMENTATION.rst

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

0 commit comments

Comments
 (0)