Skip to content

Commit c1e3a11

Browse files
committed
Fix SQL generation not working on Docker due to not having the CONCAT SQLite extension.
1 parent 89fbcfb commit c1e3a11

13 files changed

Lines changed: 39 additions & 19 deletions

File tree

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# Changelog
22

3+
## 7.0.3 (2025-07-28)
4+
5+
- Fix SQL generation not working on Docker due to not having the `CONCAT` SQLite extension.
6+
37
## 7.0.2 (2025-06-09)
48

59
- Fix key's `item_id` not being saved correctly.

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,8 @@ If a newer version of the image has been uploaded, it will be updated.
5454
When done, a database file called `tibiawiki.db` will be found on the folder.
5555

5656
## Docker
57-
![Docker Pulls](https://img.shields.io/docker/pulls/galarzaa90/tibiawiki-sql)
58-
![Docker Image Size (latest semver)](https://img.shields.io/docker/image-size/galarzaa90/tibiawiki-sql?sort=semver)
57+
[![Docker Pulls](https://img.shields.io/docker/pulls/galarzaa90/tibiawiki-sql)](https://hub.docker.com/r/galarzaa90/tibiawiki-sql)
58+
[![Docker Image Size (latest semver)](https://img.shields.io/docker/image-size/galarzaa90/tibiawiki-sql?sort=semver)](https://hub.docker.com/r/galarzaa90/tibiawiki-sql/tags)
5959

6060
The database can also be generated without installing the project, it's dependencies, or Python, by using Docker.
6161
Make sure to have Docker installed, then simply run:
@@ -94,4 +94,4 @@ For questions, suggestions and bug reports, submit an issue.
9494

9595
The best way to contribute to this project is by contributing to [TibiaWiki](https://tibia.fandom.com).
9696

97-
![image](https://vignette.wikia.nocookie.net/tibia/images/d/d9/Tibiawiki_Small.gif/revision/latest?cb=20150129101832&path-prefix=en)
97+
[![image](https://vignette.wikia.nocookie.net/tibia/images/d/d9/Tibiawiki_Small.gif/revision/latest?cb=20150129101832&path-prefix=en)](https://tibia.fandom.com/)

generateWithDocker.sh

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,25 @@
11
#!/bin/bash
2+
set -e
23

3-
sudo docker build -t tibiawiki-sql .
4+
echo "🐳 Building local Docker image..."
5+
docker build --pull -t tibiawiki-sql .
46

7+
echo "🗃️ Preparing files..."
58
touch tibiawiki.db
69
mkdir -p images
710

8-
sudo docker run \
9-
-v "$(pwd)"/tibiawiki.db:/usr/src/app/tibiawiki.db \
10-
-v "$(pwd)"/images:/usr/src/app/images \
11-
-ti --rm tibiawiki-sql
11+
# Handle Git Bash on Windows vs Linux/macOS
12+
case "$OSTYPE" in
13+
msys*|cygwin*)
14+
WORKDIR=$(pwd -W)
15+
;;
16+
*)
17+
WORKDIR=$(pwd)
18+
;;
19+
esac
20+
21+
echo "🚀 Running tibiawiki-sql container..."
22+
docker run \
23+
-v "$WORKDIR/tibiawiki.db:/usr/src/app/tibiawiki.db" \
24+
-v "$WORKDIR/images:/usr/src/app/images" \
25+
-ti --rm tibiawiki-sql -sd

tibiawikisql/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@
44
__copyright__ = "Copyright 2025 Allan Galarza"
55

66
__license__ = "Apache 2.0"
7-
__version__ = "7.0.2"
7+
__version__ = "7.0.3"

tibiawikisql/database.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
from sqlite3 import Connection, Cursor, Row
88
from typing import Any, ClassVar, TypeVar
99

10-
from pypika import Order, Query, Table as PTable
10+
from pypika import Order, SQLLiteQuery as Query, Table as PTable
1111

1212
from tibiawikisql.errors import InvalidColumnValueError, SchemaError
1313

tibiawikisql/models/creature.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from typing import Any
55

66
from pydantic import BaseModel, Field
7-
from pypika import Parameter, Query, Table
7+
from pypika import Parameter, SQLLiteQuery as Query, Table
88
from typing_extensions import Self
99

1010
from tibiawikisql.api import WikiEntry

tibiawikisql/models/imbuement.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from typing import Any
44

55
from pydantic import BaseModel, Field
6-
from pypika import Parameter, Query
6+
from pypika import Parameter, SQLLiteQuery as Query
77
from typing_extensions import Self
88

99
from tibiawikisql.api import WikiEntry

tibiawikisql/models/item.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33

44
import pydantic
55
from pydantic import BaseModel, Field
6-
from pypika import Parameter, Query, Table, functions as fn
6+
from pypika import Parameter, Table, SQLLiteQuery as Query
7+
from pypika.functions import Concat
8+
from pypika.terms import LiteralValue, ValueWrapper
79
from typing_extensions import Self
810

911
from tibiawikisql.api import WikiEntry
@@ -425,7 +427,7 @@ def insert(self, conn: Connection | Cursor) -> None:
425427
(
426428
Query.from_(item_table)
427429
.select(item_table.article_id)
428-
.where(item_table.title == fn.Concat(Parameter(":material"), ' Key'))
430+
.where(item_table.title == LiteralValue(":material || ' Key'"))
429431
),
430432
Parameter(":material"),
431433
Parameter(":location"),

tibiawikisql/models/npc.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from typing import Any
55

66
from pydantic import BaseModel, Field
7-
from pypika import Parameter, Query, Table
7+
from pypika import Parameter, SQLLiteQuery as Query, Table
88
from typing_extensions import Self
99

1010
from tibiawikisql.api import WikiEntry

tibiawikisql/models/outfit.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from typing import Any
44

55
from pydantic import BaseModel, Field
6-
from pypika import Parameter, Query, Table
6+
from pypika import Parameter, SQLLiteQuery as Query, Table
77
from typing_extensions import Self
88

99
from tibiawikisql.api import WikiEntry

0 commit comments

Comments
 (0)