Skip to content

Commit 1e5fc5d

Browse files
committed
changelog
1 parent aaba26e commit 1e5fc5d

File tree

1 file changed

+108
-25
lines changed

1 file changed

+108
-25
lines changed

CHANGELOG.md

+108-25
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,113 @@
11
# CHANGELOG.md
22

3-
## 0.34.0 (2025-03-23)
4-
5-
- `delete_link` in the list component now submits a POST request, instead of being a simple link.
6-
- This avoids accidental deletion by bots following links, and is more in line with HTTP semantics.
7-
- In the table component, the `_col_` prefix is now added to column names in CSS classes. This avoids conflicts with other CSS classes that might be used in the page.
8-
- fixes https://github.com/sqlpage/SQLPage/issues/830
9-
- This is a breaking change for custom CSS rules that target table columns by their name.
10-
- Before: `.my_column { ... }`
11-
- After: `._col_my_column { ... }`
12-
- New configuration options:
13-
- `markdown_allow_dangerous_html`: allow the usage of html in markdown (default: false)
14-
- `markdown_allow_dangerous_protocol`: allow the usage of custom protocols in markdown (default: false)
15-
- Allow data URLs in markdown images. This allows embedding base64 encoded images in any markdown field.
16-
- see [configuration.md](./configuration.md) for more details.
17-
- In the shell component, setting the `footer` parameter to the empty string (`''`) will now completely hide the footer, instead of showing the default one
18-
- New configuration option: `rtl` to display the page in right-to-left mode. This can be used to display Arabic, Hebrew, Persian, etc.
19-
- fix a crash when manipulating TINYINTs from microsoft sql server
20-
- update sqlparser to 0.55: https://github.com/apache/datafusion-sqlparser-rs/blob/main/changelog/0.55.0.md
21-
- fix a diplay issue when using intra-page anchor links inside tables with fixed headers
22-
- Columns without buttons
23-
- In the columns component, when no button text is specified, no button is displayed (instead of an empty button)
24-
- New `unsafe_contents_md` property in the text component to allow rendering markdown with embedded HTML tags.
25-
- New `_sqlpage_footer` property for table rows. When applied, that row will be rendered as the table footer. It is recommended to use this on the last data row.
26-
- New `freeze_footers` property in table component. If the footer is enabled, this will make it always visible. Works similarly to `freeze_headers`.
27-
- Hidden files and folders (those with a name starting with a `.`) are now inaccessible. This allows you to easily create internal files to use with `sqlpage.run_sql(...)` that will not be directly accessible.
3+
## v0.34 (2025-03-23)
4+
5+
### ✨ Top Features at a Glance
6+
- **Safer deletion flows** in lists
7+
- **Better table styling control** with CSS updates
8+
- **Right-to-Left language support**
9+
- **HTML-enhanced Markdown** in text components
10+
- **Sticky table footers** for better data presentation
11+
12+
### 🔒 Security First
13+
#### **POST-based Deletions**
14+
List component's `delete_link` now uses secure POST requests:
15+
```sql
16+
SELECT 'list' AS component;
17+
SELECT 'Delete me' AS title, 'delete_item.sql?id=77' AS delete_link;
18+
```
19+
*Prevents accidental deletions by web crawlers and follows REST best practices*
20+
21+
#### **Protected Internal Files**
22+
- Files/folders starting with `.` (e.g., `.utils/`) are now inaccessible
23+
- Perfect for internal scripts used with `sqlpage.run_sql()`
24+
25+
### 🎨 UI & Component Upgrades
26+
#### **Table Styling Revolution**
27+
```css
28+
/* Before: .price | After: */
29+
._col_price {
30+
background: #f8f9fa;
31+
border-right: 2px solid #dee2e6;
32+
}
33+
```
34+
- New CSS class pattern: `._col_{column_name}`
35+
- Fixes [#830](https://github.com/sqlpage/SQLPage/issues/830)
36+
37+
#### **Column component**
38+
```sql
39+
SELECT 'columns' AS component;
40+
SELECT 'View details' AS title; -- No button shown
41+
```
42+
- Columns without button text now hide empty buttons
43+
- Cleaner interfaces by default
44+
45+
#### **Sticky Table Footers**
46+
```sql
47+
SELECT
48+
'table' AS component,
49+
true AS freeze_footers;
50+
SELECT
51+
'Total' AS label,
52+
SUM(price) AS value,
53+
true AS _sqlpage_footer;
54+
```
55+
- Keep summary rows visible during scroll
56+
- Use `_sqlpage_footer` on your final data row
57+
58+
### 🌍 Internationalization
59+
#### **Right-to-Left Support**
60+
```sql
61+
SELECT 'shell' AS component, true AS rtl;
62+
```
63+
- Enable RTL mode per page via shell component
64+
- Perfect for Arabic, Hebrew, and Persian content
65+
66+
### 📝 Content Handling
67+
#### **Rich Text Power**
68+
```sql
69+
SELECT 'text' AS component,
70+
'<div class="alert alert-warning">
71+
**Important!**
72+
73+
New *HTML-enhanced* content.
74+
</div>'
75+
AS unsafe_contents_md;
76+
```
77+
- New `unsafe_contents_md` allows HTML+Markdown mixing
78+
79+
#### **Base64 Image Support**
80+
```markdown
81+
![Alt text](data:image/png;base64,iVBORw0KGg...)
82+
```
83+
- Embed images directly in Markdown fields
84+
85+
### ⚙️ Configuration Tweaks
86+
```json
87+
{
88+
"markdown_allow_dangerous_html": false,
89+
"markdown_allow_dangerous_protocol": false
90+
}
91+
```
92+
- **Markdown safety controls** to change markdown rendering settings
93+
94+
### 🐛 Notable Fixes
95+
- **SQL Server**
96+
Fixed TINYINT handling crashes
97+
- **Anchor Links**
98+
Corrected display in tables with fixed headers
99+
- **Form Inputs**
100+
Proper handling of `0` values in number fields
101+
102+
### 💡 Upgrade Guide
103+
1. **CSS Updates**
104+
Search/replace `.your_column``._col_your_column` if you have custom css targetting tables.
105+
2. **Deletion Flows**
106+
Test list components using `delete_link`.
107+
You can now add a check that the request method is POST if you want to forbid deletions by simply loading pages.
108+
109+
[View full configuration options →](./configuration.md)
110+
28111

29112
## 0.33.1 (2025-02-25)
30113

0 commit comments

Comments
 (0)