Skip to content

Commit 6459286

Browse files
build: update packaging for MinAn 2.0
1 parent 256a425 commit 6459286

11 files changed

Lines changed: 40 additions & 48 deletions

File tree

README_Kurzstart.txt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
1-
MinAn 1.4 - CSV-Schnellanalyse
1+
MinAn 2.0 - CSV-Schnellanalyse
22

33
Was ist MinAn?
44
MinAn ist ein portables Windows-Tool zur schnellen Analyse von CSV-Dateien.
55

66
So starten Sie MinAn:
77
1. MinAn.exe im selben Ordner starten.
8-
2. Im Fenster auf "CSV oeffnen" klicken oder den Schnellstart aufrufen.
8+
2. Im Fenster auf "CSV öffnen" klicken oder den Schnellstart aufrufen.
99

1010
Eigene CSV laden:
11-
- "CSV oeffnen" waehlen und eine Datei auswaehlen.
11+
- "CSV öffnen" wählen und eine Datei auswählen.
1212

1313
Beispieldatei laden:
14-
- "Info / Schnellstart" oeffnen.
14+
- "Info / Schnellstart" öffnen.
1515
- Auf "Beispieldatei laden" klicken.
1616

1717
Wo landen Berichte?
18-
- Standardmaessig in: output\reports
18+
- Standardmäßig in: output\reports
1919

2020
Wo landen CSV-Exporte?
21-
- Standardmaessig in: output\csv
21+
- Standardmäßig in: output\csv
2222

2323
Wichtig:
2424
- Alles funktioniert portable innerhalb dieses Ordners.
25-
- Die Originaldatei wird nicht ueberschrieben.
25+
- Die Originaldatei wird nicht überschrieben.

assets/icons/minan_v1.ico

-16.2 KB
Binary file not shown.

assets/icons/minan_v1.png

35.7 KB
Loading

build_release.bat

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
@echo off
22
setlocal
3-
REM MinAn 1.4 - Release bauen (One-Folder via PyInstaller)
3+
REM MinAn 2.0 - Release bauen (One-File via PyInstaller)
44

55
set PROJECT_ROOT=%~dp0
6-
set RELEASE_VERSION=1_4
6+
set RELEASE_VERSION=2_0
77
set RELEASE_DIR=%PROJECT_ROOT%dist\MinAn_%RELEASE_VERSION%
88
set BUILD_DIR=%PROJECT_ROOT%build
99
set SPEC_FILE=%PROJECT_ROOT%packaging\pyinstaller\minan_v1.spec
1010
set VERSION_FILE=%PROJECT_ROOT%packaging\pyinstaller\windows_version_info.txt
1111
set SAMPLE_FILE=%PROJECT_ROOT%assets\sample_data\test_csv_deutsch_200x15.csv
12-
set EXE_PATH=%RELEASE_DIR%\MinAn.exe
12+
set EXE_PATH=%PROJECT_ROOT%dist\MinAn.exe
1313

14-
echo === MinAn 1.4 - Release-Build ===
14+
echo === MinAn 2.0 - Release-Build ===
1515

1616
python -m PyInstaller --version >nul 2>&1
1717
if errorlevel 1 (
@@ -43,25 +43,22 @@ if errorlevel 1 (
4343
exit /b 1
4444
)
4545

46+
if not exist "%RELEASE_DIR%" mkdir "%RELEASE_DIR%"
47+
move /Y "%PROJECT_ROOT%dist\MinAn.exe" "%RELEASE_DIR%\MinAn.exe" >nul
48+
set EXE_PATH=%RELEASE_DIR%\MinAn.exe
49+
4650
if not exist "%EXE_PATH%" (
4751
echo FEHLER: Build abgeschlossen, aber MinAn.exe fehlt: %EXE_PATH%
4852
exit /b 1
4953
)
5054

51-
if not exist "%RELEASE_DIR%\_internal\sample_data" mkdir "%RELEASE_DIR%\_internal\sample_data"
52-
if not exist "%RELEASE_DIR%\output\reports" mkdir "%RELEASE_DIR%\output\reports"
53-
if not exist "%RELEASE_DIR%\output\csv" mkdir "%RELEASE_DIR%\output\csv"
54-
5555
copy /Y "%~dp0README_Kurzstart.txt" "%RELEASE_DIR%\README_Kurzstart.txt" >nul
56-
copy /Y "%~dp0README.md" "%RELEASE_DIR%\README.md" >nul
56+
copy /Y "%~dp0LICENSE" "%RELEASE_DIR%\LICENSE.txt" >nul
5757

5858
echo.
5959
echo Build erfolgreich. Ausgabe in: dist\MinAn_%RELEASE_VERSION%\
6060
echo Erwartete Struktur:
6161
echo MinAn.exe
62-
echo _internal\sample_data\
63-
echo output\reports\
64-
echo output\csv\
6562
echo README_Kurzstart.txt
66-
echo README.md
63+
echo LICENSE.txt
6764
exit /b 0

packaging/pyinstaller/minan_v1.spec

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# -*- mode: python ; coding: utf-8 -*-
2-
"""PyInstaller Spec-Datei fuer MinAn 1.4 - One-Folder-Release."""
2+
"""PyInstaller Spec-Datei fuer MinAn 2.0 - One-File-Release."""
33

44
from pathlib import Path
55

@@ -12,9 +12,13 @@ ICON_PATH = ASSETS_DIR / "icons" / "minan_v1.ico"
1212
SAMPLE_FILE_NAME = "test_csv_deutsch_200x15.csv"
1313
SAMPLE_FILE_PATH = ASSETS_DIR / "sample_data" / SAMPLE_FILE_NAME
1414
VERSION_INFO_PATH = Path(SPECPATH) / "windows_version_info.txt"
15-
APP_VERSION = "1.4"
15+
APP_VERSION = "2.0"
1616
DIST_NAME = f"MinAn_{APP_VERSION.replace('.', '_')}"
1717

18+
# Make the build setup robust by defining output directories directly in the spec
19+
WORKPATH = str(PROJECT_ROOT / "build")
20+
DISTPATH = str(PROJECT_ROOT / "dist")
21+
1822
if not ICON_PATH.exists():
1923
raise FileNotFoundError(f"Icon file missing: {ICON_PATH}")
2024
if not SAMPLE_FILE_PATH.exists():
@@ -56,25 +60,16 @@ pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher)
5660
exe = EXE(
5761
pyz,
5862
a.scripts,
59-
[],
60-
exclude_binaries=True,
63+
a.binaries,
64+
a.zipfiles,
65+
a.datas,
6166
name="MinAn",
6267
icon=str(ICON_PATH),
6368
version=str(VERSION_INFO_PATH),
6469
debug=False,
6570
bootloader_ignore_signals=False,
6671
strip=False,
6772
upx=True,
68-
console=False,
69-
)
70-
71-
coll = COLLECT(
72-
exe,
73-
a.binaries,
74-
a.zipfiles,
75-
a.datas,
76-
strip=False,
77-
upx=True,
7873
upx_exclude=[],
79-
name=DIST_NAME,
74+
console=False,
8075
)

packaging/pyinstaller/windows_version_info.txt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
VSVersionInfo(
22
ffi=FixedFileInfo(
3-
filevers=(1, 4, 0, 0),
4-
prodvers=(1, 4, 0, 0),
3+
filevers=(2, 0, 0, 0),
4+
prodvers=(2, 0, 0, 0),
55
mask=0x3F,
66
flags=0x0,
77
OS=0x40004,
@@ -16,12 +16,12 @@ VSVersionInfo(
1616
"040704B0",
1717
[
1818
StringStruct("CompanyName", "MinAn Software"),
19-
StringStruct("FileDescription", "MinAn 1.4 - CSV-Schnellanalyse"),
20-
StringStruct("FileVersion", "1.4.0.0"),
19+
StringStruct("FileDescription", "MinAn 2.0 - CSV-Schnellanalyse"),
20+
StringStruct("FileVersion", "2.0.0.0"),
2121
StringStruct("InternalName", "MinAn"),
2222
StringStruct("OriginalFilename", "MinAn.exe"),
23-
StringStruct("ProductName", "MinAn 1.4"),
24-
StringStruct("ProductVersion", "1.4"),
23+
StringStruct("ProductName", "MinAn 2.0"),
24+
StringStruct("ProductVersion", "2.0"),
2525
],
2626
)
2727
]

requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
PySide6>=6.6,<6.9
1+
PySide6>=6.6,<7.0
22
pandas>=2.1,<3.0
33
matplotlib>=3.8,<4.0
44
pyinstaller>=6.0,<7.0

run_dev.bat

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
@echo off
2-
REM MinAn 1.4 - Entwicklungsmodus starten
2+
REM MinAn 2.0 - Entwicklungsmodus starten
33

4-
echo === MinAn 1.4 - Dev-Start ===
4+
echo === MinAn 2.0 - Dev-Start ===
55

66
python --version >nul 2>&1
77
if errorlevel 1 (

src/minan_v1/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
"""MinAn 1.4 - Lokales CSV-Schnellanalyse-Tool fuer Windows."""
1+
"""MinAn 2.0 - Lokales CSV-Schnellanalyse-Tool fuer Windows."""
22

3-
__version__ = "1.4"
3+
__version__ = "2.0"

src/minan_v1/app.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
"""App-Initialisierung fuer MinAn 1.4."""
1+
"""App-Initialisierung fuer MinAn 2.0."""
22

33
from PySide6.QtGui import QIcon
44
from PySide6.QtWidgets import QApplication

0 commit comments

Comments
 (0)