-
Notifications
You must be signed in to change notification settings - Fork 32
Release v0.28.0 #299
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Release v0.28.0 #299
Changes from all commits
Commits
Show all changes
15 commits
Select commit
Hold shift + click to select a range
6e5650b
Hungarian translation (#290)
burgatshow 3eaa7aa
fix: load .env from the application directory in config.py
f9763c8
feat: label dashboard chart axes with the user's currency
a9bb022
feat: add API v1 endpoints for trips and charging sessions (#295)
9f5a13b
fix: stay on the fuel log after deleting an entry (#298)
055b446
feat: support multiple receipts on expenses and link them from the list
91cf2c2
Merge branch 'harness/issue-295' into dev
ca5912d
Merge branch 'harness/issue-297' into dev
7438a69
Merge branch 'harness/issue-298' into dev
0ad1001
feat: optionally attach receipt images to the vehicle PDF report (#219)
4753a43
ci: bump actions/setup-python from 6 to 7 (#263)
dependabot[bot] d2629f5
deps: update psycopg2-binary requirement from >=2.9.10 to >=2.9.12 (#…
dependabot[bot] a2ac1da
deps: update coverage requirement from >=7.15.1 to >=7.15.4 (#288)
dependabot[bot] 1fc284e
Merge branch 'harness/issue-234' into dev
451a644
chore: bump version to 0.28.0
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,11 +1,17 @@ | ||
| # May Configuration | ||
| # Copy this file to .env and update the values | ||
| # Copy this file to .env and update the values. | ||
| # Keep .env next to config.py; it is read when May starts. | ||
| # Variables set in the real environment take precedence over this file. | ||
|
|
||
| # Secret key for session encryption (generate a random string for production) | ||
| SECRET_KEY=your-secret-key-here | ||
|
|
||
| # Database URL (default: SQLite in data folder) | ||
| # DATABASE_URL=sqlite:///data/may.db | ||
| # Database URL (default: SQLite in the app's own data folder) | ||
| # Uncomment and set an absolute path to move the database elsewhere. | ||
| # Note the slashes: sqlite:///path is relative, sqlite:////path is absolute. | ||
| # DATABASE_URL=sqlite:////absolute/path/to/may/data/may.db | ||
| # PostgreSQL is also supported: | ||
| # DATABASE_URL=postgresql://user:password@host:5432/may | ||
|
|
||
| # Upload folder for attachments | ||
| # UPLOAD_FOLDER=/app/data/uploads | ||
| # Upload folder for attachments (default: the app's own data/uploads folder) | ||
| # UPLOAD_FOLDER=/absolute/path/to/may/data/uploads |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,59 @@ | ||
| # Changelog | ||
|
|
||
| All notable changes to this project are documented in this file. | ||
|
|
||
| The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), | ||
| and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). | ||
|
|
||
| This file starts at 0.28.0. Notes for earlier releases are on the | ||
| [GitHub releases page](https://github.com/dannymcc/may/releases). | ||
|
|
||
| ## [0.28.0] - 2026-08-23 | ||
|
|
||
| ### Added | ||
|
|
||
| - Vehicle PDF reports can now include receipt images. The vehicle page has a | ||
| "PDF + Receipts" button alongside the existing "PDF" one; it appends the | ||
| images attached to the fuel logs and expenses in the report. Anything that | ||
| cannot be inlined — a PDF scan, a missing file, or one that would push the | ||
| report past the 20 MB image budget — is listed at the end of the report | ||
| rather than dropped silently. | ||
| ([#219](https://github.com/dannymcc/may/issues/219)) | ||
| - Expenses accept more than one receipt. Select several files when adding or | ||
| editing an expense, and the expandable row in the expense list links to each | ||
| one. Files rejected for an unsupported extension are now reported rather than | ||
| dropped silently. ([#234](https://github.com/dannymcc/may/issues/234)) | ||
| - API v1 endpoints for trips and charging sessions: list, create, read, update | ||
| and delete under `/api/v1/vehicles/{id}/trips`, `/api/v1/trips/{id}`, | ||
| `/api/v1/vehicles/{id}/charging` and `/api/v1/charging/{id}`, plus | ||
| `/api/v1/trip-purposes` and `/api/v1/charger-types`. Documented at `/api/docs`. | ||
| ([#295](https://github.com/dannymcc/may/issues/295)) | ||
| - Dashboard charts label their value axis with your currency, and tooltips show | ||
| it too. ([#289](https://github.com/dannymcc/may/issues/289)) | ||
| - Initial Hungarian translation files, contributed by | ||
| [@burgatshow](https://github.com/burgatshow). Hungarian is not yet offered in | ||
| the language picker while the remaining strings are filled in. | ||
| ([#290](https://github.com/dannymcc/may/pull/290)) | ||
|
|
||
| ### Fixed | ||
|
|
||
| - `.env` settings were silently ignored. `config.py` now loads the `.env` file | ||
| sitting next to it before reading the environment. Real environment variables | ||
| still take precedence, so Docker deployments are unaffected. | ||
| ([#297](https://github.com/dannymcc/may/issues/297)) | ||
| - Deleting an entry from the fuel log bounced you to the vehicle page; it now | ||
| leaves you where you were. ([#298](https://github.com/dannymcc/may/issues/298)) | ||
|
|
||
| ### Changed | ||
|
|
||
| - The expense list loads attachments in a single query rather than one per row. | ||
| - README and `.env.example` corrected: the real defaults for `DATABASE_URL` and | ||
| `UPLOAD_FOLDER` are inside the application directory, the `sqlite:///` versus | ||
| `sqlite:////` distinction is spelled out, and there is a note that `.env` does | ||
| not drive those two keys under Docker Compose. | ||
| - The supported languages table in the README now lists Arabic, Czech, Russian | ||
| and Turkish, which were already available in the app. | ||
| - Dependencies: `psycopg2-binary` >= 2.9.12 | ||
| ([#280](https://github.com/dannymcc/may/pull/280)), `coverage` >= 7.15.4 | ||
| ([#288](https://github.com/dannymcc/may/pull/288)), and `actions/setup-python` | ||
| bumped from 6 to 7 in CI ([#263](https://github.com/dannymcc/may/pull/263)). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔒 Security & Privacy | 🟡 Minor | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
Repository: dannymcc/may
Length of output: 2234
🏁 Script executed:
Repository: dannymcc/may
Length of output: 965
Add explicit permissions to the test job.
The workflow already limits the
build-and-pushjob. Setpermissions: contents: readon thetestjob to avoid repository-default token permissions.🧰 Tools
🪛 zizmor (1.29.0)
[warning] 1-84: overly broad permissions (excessive-permissions): default permissions used due to no permissions: block
(excessive-permissions)
[warning] 16-32: overly broad permissions (excessive-permissions): default permissions used due to no permissions: block
(excessive-permissions)
[error] 23-23: runtime artifacts potentially vulnerable to a cache poisoning attack (cache-poisoning): this step
(cache-poisoning)
🤖 Prompt for AI Agents
Source: Linters/SAST tools