Your music, beautifully tracked. All yours. (coming soon) teal.fm
teal-fm atproto

query data written to .sqlx in the workspace root; please check this into version control

+64
.sqlx/query-78d9f0eb3a550928cccd0a8c0faf3c9176a354238bf32b97a73a7bb41014b5eb.json
··· 1 + { 2 + "db_name": "PostgreSQL", 3 + "query": "\n SELECT\n p.did,\n p.track_name,\n -- TODO: replace with actual\n STRING_AGG(pa.artist_name || '|' || TEXT(pa.artist_mbid), ',') AS artists,\n p.release_name,\n p.duration,\n p.uri,\n p.recording_mbid,\n p.release_mbid\n\n FROM plays AS p\n LEFT JOIN play_to_artists AS pa ON pa.play_uri = p.uri\n GROUP BY p.did, p.track_name, p.release_name, p.played_time, p.duration, p.uri, p.recording_mbid, p.release_mbid\n ORDER BY p.played_time DESC\n LIMIT $1\n ", 4 + "describe": { 5 + "columns": [ 6 + { 7 + "ordinal": 0, 8 + "name": "did", 9 + "type_info": "Text" 10 + }, 11 + { 12 + "ordinal": 1, 13 + "name": "track_name", 14 + "type_info": "Text" 15 + }, 16 + { 17 + "ordinal": 2, 18 + "name": "artists", 19 + "type_info": "Text" 20 + }, 21 + { 22 + "ordinal": 3, 23 + "name": "release_name", 24 + "type_info": "Text" 25 + }, 26 + { 27 + "ordinal": 4, 28 + "name": "duration", 29 + "type_info": "Int4" 30 + }, 31 + { 32 + "ordinal": 5, 33 + "name": "uri", 34 + "type_info": "Text" 35 + }, 36 + { 37 + "ordinal": 6, 38 + "name": "recording_mbid", 39 + "type_info": "Uuid" 40 + }, 41 + { 42 + "ordinal": 7, 43 + "name": "release_mbid", 44 + "type_info": "Uuid" 45 + } 46 + ], 47 + "parameters": { 48 + "Left": [ 49 + "Int8" 50 + ] 51 + }, 52 + "nullable": [ 53 + false, 54 + false, 55 + null, 56 + true, 57 + true, 58 + false, 59 + true, 60 + true 61 + ] 62 + }, 63 + "hash": "78d9f0eb3a550928cccd0a8c0faf3c9176a354238bf32b97a73a7bb41014b5eb" 64 + }
-1
Cargo.toml
··· 1 1 [workspace] 2 2 members = ["apps/aqua", "services/cadet", "services/satellite", "services/types", "tools/teal-cli"] 3 - default-members = ["services/types"] 4 3 resolver = "2" 5 4 6 5 [workspace.dependencies]
+6 -6
package.json
··· 28 28 "lex:diff": "cd tools/lexicon-cli && node dist/index.js diff", 29 29 "lex:build-amethyst": "pnpm lex:gen-server && pnpm turbo build --filter=@teal/amethyst", 30 30 "lex:dev": "pnpm lex:gen-server && pnpm turbo dev --filter=@teal/amethyst", 31 - "db:migrate": "cd services && sqlx migrate run", 32 - "db:migrate:revert": "cd services && sqlx migrate revert", 33 - "db:create": "cd services && sqlx database create", 34 - "db:drop": "cd services && sqlx database drop", 35 - "db:reset": "cd services && sqlx database drop && sqlx database create && sqlx migrate run", 36 - "db:prepare": "cd services && sqlx prepare" 31 + "db:migrate": "sqlx migrate run", 32 + "db:migrate:revert": "sqlx migrate revert", 33 + "db:create": "sqlx database create", 34 + "db:drop": "sqlx database drop", 35 + "db:reset": "sqlx database drop && sqlx database create && sqlx migrate run", 36 + "db:prepare": "sqlx prepare" 37 37 }, 38 38 "dependencies": { 39 39 "@atproto/oauth-client": "^0.3.8",