l5y
|
3edf60c625
|
chore: clean up repository (#96)
* chore: clean up repository
* Fix message spec node lookup for numeric IDs (#98)
* Fix message spec node lookup for numeric IDs
* run rufo
* Fix message node fallback lookup (#99)
|
2025-09-16 15:25:12 +02:00 |
|
l5y
|
1beb343501
|
Handle SQLite busy errors when upserting nodes (#100)
|
2025-09-16 15:24:01 +02:00 |
|
l5y
|
0c0f877b13
|
Configure Sinatra logging level from DEBUG flag (#97)
* Configure Sinatra logging level
* Fix logger level helper invocation
* Fix Sinatra logger helper definition syntax
|
2025-09-16 14:46:50 +02:00 |
|
l5y
|
f7a1b5c5ad
|
Add penetration tests for authentication and SQL injection (#95)
|
2025-09-16 13:13:57 +02:00 |
|
l5y
|
051d09dcaf
|
Document Python and Ruby source modules (#94)
|
2025-09-16 13:13:12 +02:00 |
|
l5y
|
eb900aecb6
|
Add tests covering mesh helper edge cases (#93)
* test: expand coverage for mesh helpers
* run black
|
2025-09-16 12:48:01 +02:00 |
|
l5y
|
f16393eafd
|
fix py code cov (#92)
|
2025-09-16 12:10:17 +02:00 |
|
l5y
|
49dcfebfb3
|
Add Codecov coverage and test analytics for Python CI (#91)
|
2025-09-16 12:04:46 +02:00 |
|
l5y
|
1c13b99f3b
|
Skip null fields when choosing packet identifiers (#88)
|
2025-09-16 11:56:02 +02:00 |
|
l5y
|
54a1eb5b42
|
create python yml ga (#90)
* Create python.yml
* ci: add black
* run an actual formatter
* also add rufo
* fix pytest
* run black
|
2025-09-16 11:50:33 +02:00 |
|
l5y
|
2818c6d2b8
|
Add unit tests for mesh ingestor script (#89)
|
2025-09-16 11:44:28 +02:00 |
|
l5y
|
f4aa5d3873
|
Add coverage for debug logging on messages without sender (#86)
* Add debug logging spec for messages without sender
* Route debug logging through Kernel.warn
* Relax debug log matchers
|
2025-09-16 11:33:03 +02:00 |
|
l5y
|
542f4dd0e2
|
Handle concurrent node snapshot updates (#85)
|
2025-09-16 11:10:11 +02:00 |
|
l5y
|
4a72cdda75
|
Fix extraction of packet sender ids (#84)
|
2025-09-16 10:35:11 +02:00 |
|
l5y
|
4b9d581448
|
Add coverage for API authentication and payload edge cases (#83)
|
2025-09-16 10:18:10 +02:00 |
|
l5y
|
1d3b3f11e9
|
Add Codecov test analytics to Ruby workflow (#82)
|
2025-09-16 10:12:25 +02:00 |
|
l5y
|
e97824fd0b
|
Configure SimpleCov for Codecov coverage (#81)
|
2025-09-16 09:58:44 +02:00 |
|
l5y
|
1cd9058685
|
update codecov job (#80)
* update codecov job
* add codecov condif
|
2025-09-16 09:55:53 +02:00 |
|
l5y
|
47e23ea14c
|
fix readme badges (#79)
* fix readme badges
* fix readme badges
|
2025-09-16 09:46:44 +02:00 |
|
l5y
|
afd18794c7
|
Add Codecov upload step to Ruby workflow (#78)
|
2025-09-16 09:43:09 +02:00 |
|
l5y
|
203bd623bd
|
Add Apache license headers to source files (#77)
* Add Apache license headers to source files
* fix formatting
|
2025-09-16 09:39:28 +02:00 |
|
l5y
|
2b6b44a31d
|
Add integration specs for node and message APIs (#76)
|
2025-09-16 09:29:31 +02:00 |
|
l5y
|
0059a6aab3
|
docs: update for 0.2.0 release (#75)
* docs: update for 0.2.0 release
* docs: add scrot 0.2
|
2025-09-16 09:23:11 +02:00 |
|
l5y
|
fc30a080ff
|
create ruby workflow (#74)
* create ruby workflow
* add step for dependencies
* bump ruby version
* Set up Ruby action in web directory
|
2025-09-16 08:52:33 +02:00 |
|
l5y
|
7399c02be9
|
Add RSpec tests for app boot and database setup (#73)
|
2025-09-16 08:25:13 +02:00 |
|
l5y
|
02e985d2a8
|
Align refresh controls with status text (#72)
* Align refresh controls with status text
* Improve mobile alignment for refresh controls
|
2025-09-16 08:21:15 +02:00 |
|
l5y
|
954352809f
|
spec: update testdata
|
2025-09-16 08:11:11 +02:00 |
|
l5y
|
7eb36a5a3d
|
remove duplication
|
2025-09-15 21:35:59 +02:00 |
|
l5y
|
0768b4d91a
|
Improve mobile layout (#68)
* Improve mobile layout
* styling tweaks
|
2025-09-15 21:32:56 +02:00 |
|
l5y
|
be1306c9c0
|
Normalize message sender IDs using node numbers (#67)
|
2025-09-15 21:04:29 +02:00 |
|
l5y
|
7904717597
|
style: simplify node table (#65)
|
2025-09-15 18:16:36 +02:00 |
|
l5y
|
e2c19e1611
|
Add debug logging for missing from_id (#64)
|
2025-09-15 18:15:46 +02:00 |
|
l5y
|
b230e79ab0
|
Handle nested dataclasses in node snapshots (#63)
|
2025-09-15 14:59:23 +02:00 |
|
l5y
|
31727e35bb
|
add placeholder for default frequency
|
2025-09-15 14:48:12 +02:00 |
|
l5y
|
22127bbfb4
|
ignore log files
|
2025-09-15 14:44:32 +02:00 |
|
l5y
|
413278544a
|
Log node object on snapshot update failure (#62)
|
2025-09-15 14:34:56 +02:00 |
|
l5y
|
580a588df7
|
Run schema initialization only when database or tables are missing (#61)
|
2025-09-15 14:05:01 +02:00 |
|
l5y
|
b39b83fb51
|
Send mesh data to Potatomesh API (#60)
* feat: post mesh data to API
* Serialize node objects before posting
* don't put raw json in api/db
|
2025-09-15 14:00:48 +02:00 |
|
l5y
|
6d948603c9
|
Convert boolean flags to integers for SQLite (#59)
|
2025-09-15 13:37:30 +02:00 |
|
l5y
|
648bcc9b92
|
Use packet id as message primary key (#58)
* Use packet id as message primary key
* fix query
* fix query
|
2025-09-15 13:34:59 +02:00 |
|
l5y
|
4dc1227be7
|
Add POST /api/messages and enforce API token (#56)
|
2025-09-15 13:13:47 +02:00 |
|
l5y
|
3b097feaae
|
Update README.md
|
2025-09-15 12:17:45 +02:00 |
|
l5y
|
da2e5fbde1
|
feat: parameterize community info (#55)
* feat: parameterize community info
* chore: restore test data and document env defaults
* also make default channel configurable
|
2025-09-15 12:15:51 +02:00 |
|
l5y
|
003db7c36a
|
feat: add dark mode toggle (#54)
* feat: add dark mode toggle
* fix chat colors in dark mode
|
2025-09-15 11:53:49 +02:00 |
|
l5y
|
9aa640338d
|
Update README.md
|
2025-09-15 11:44:44 +02:00 |
|
l5y
|
3c24b71f16
|
ignore copies
|
2025-09-15 11:42:27 +02:00 |
|
l5y
|
eee6738a9c
|
add changelog
|
2025-09-15 08:49:12 +02:00 |
|
l5y
|
47a162be3e
|
add test database
v0.1.0
|
2025-09-15 08:41:18 +02:00 |
|
l5y
|
de6dcad9b4
|
add messages test data
|
2025-09-15 08:39:13 +02:00 |
|
l5y
|
57816908c8
|
update readme
|
2025-09-15 08:32:55 +02:00 |
|