René's URL Explorer Experiment


Title: feat(sql/ast): Render AST to SQL by kyleconroy · Pull Request #2815 · sqlc-dev/sqlc · GitHub

Open Graph Title: feat(sql/ast): Render AST to SQL by kyleconroy · Pull Request #2815 · sqlc-dev/sqlc

X Title: feat(sql/ast): Render AST to SQL by kyleconroy · Pull Request #2815 · sqlc-dev/sqlc

Description: Generate type-safe code from SQL. Contribute to sqlc-dev/sqlc development by creating an account on GitHub.

Open Graph Description: Add a new Format method to AST nodes to support writing an AST tree back to SQL. The rendered SQL is checked to be equivalent to the input SQL, not exact. The tests current run against all query.sq...

X Description: Add a new Format method to AST nodes to support writing an AST tree back to SQL. The rendered SQL is checked to be equivalent to the input SQL, not exact. The tests current run against all query.sq...

Opengraph URL: https://github.com/sqlc-dev/sqlc/pull/2815

X: @github

direct link

Domain: github.com

route-pattern/_view_fragments/voltron/pull_requests/show/:user_id/:repository/:id/pull_request_layout(.:format)
route-controllervoltron_pull_requests_fragments
route-actionpull_request_layout
fetch-noncev2:e1f6d8f6-3a78-b8ec-b130-9c954e1ef645
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-id9996:9BDE:47C81A1:63B9732:6A50D8F2
html-safe-nonce5e19f8c44c2dcd4f54b40957bea0e5655de3fb4a5033b7ddd1a7ed52fce73e9c
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5OTk2OjlCREU6NDdDODFBMTo2M0I5NzMyOjZBNTBEOEYyIiwidmlzaXRvcl9pZCI6IjI5NTA5MjY4NjUyNjU2NDU4MTAiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ==
visitor-hmaccaa6a43ffebaaf88995110e1ec15a175e62ebdca81658f90340fb01562f26892
hovercard-subject-tagpull_request:1546100848
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/pull_requests_fragments/pull_request_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/voltron/pull_requests/show/sqlc-dev/sqlc/2815/pull_request_layout
twitter:imagehttps://opengraph.githubassets.com/7c5b1066a182f7072e1118a84dfece04066ea13487ad2373e1abbe4622e3f06d/sqlc-dev/sqlc/pull/2815
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/7c5b1066a182f7072e1118a84dfece04066ea13487ad2373e1abbe4622e3f06d/sqlc-dev/sqlc/pull/2815
og:image:altAdd a new Format method to AST nodes to support writing an AST tree back to SQL. The rendered SQL is checked to be equivalent to the input SQL, not exact. The tests current run against all query.sq...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernamekyleconroy
hostnamegithub.com
expected-hostnamegithub.com
None72b13e0e8d0319acdd27a145cfe73f4f06c791713d0ac4690e41fb68ad28cac0
turbo-cache-controlno-cache
go-importgithub.com/sqlc-dev/sqlc git https://github.com/sqlc-dev/sqlc.git
octolytics-dimension-user_id136738596
octolytics-dimension-user_loginsqlc-dev
octolytics-dimension-repository_id193160679
octolytics-dimension-repository_nwosqlc-dev/sqlc
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id193160679
octolytics-dimension-repository_network_root_nwosqlc-dev/sqlc
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release73ad5c4eaffed7bb3637024653eabdbca84a855e
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/sqlc-dev/sqlc/pull/2815#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fsqlc-dev%2Fsqlc%2Fpull%2F2815
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fsqlc-dev%2Fsqlc%2Fpull%2F2815
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fpull_requests_fragments%2Fpull_request_layout&source=header-repo&source_repo=sqlc-dev%2Fsqlc
Reloadhttps://github.com/sqlc-dev/sqlc/pull/2815
Reloadhttps://github.com/sqlc-dev/sqlc/pull/2815
Reloadhttps://github.com/sqlc-dev/sqlc/pull/2815
Please reload this pagehttps://github.com/sqlc-dev/sqlc/pull/2815
sqlc-dev https://github.com/sqlc-dev
sqlchttps://github.com/sqlc-dev/sqlc
Notifications https://github.com/login?return_to=%2Fsqlc-dev%2Fsqlc
Fork 1.1k https://github.com/login?return_to=%2Fsqlc-dev%2Fsqlc
Star 18k https://github.com/login?return_to=%2Fsqlc-dev%2Fsqlc
Code https://github.com/sqlc-dev/sqlc
Issues 597 https://github.com/sqlc-dev/sqlc/issues
Pull requests 106 https://github.com/sqlc-dev/sqlc/pulls
Discussions https://github.com/sqlc-dev/sqlc/discussions
Actions https://github.com/sqlc-dev/sqlc/actions
Projects https://github.com/sqlc-dev/sqlc/projects
Security and quality 0 https://github.com/sqlc-dev/sqlc/security
Insights https://github.com/sqlc-dev/sqlc/pulse
Code https://github.com/sqlc-dev/sqlc
Issues https://github.com/sqlc-dev/sqlc/issues
Pull requests https://github.com/sqlc-dev/sqlc/pulls
Discussions https://github.com/sqlc-dev/sqlc/discussions
Actions https://github.com/sqlc-dev/sqlc/actions
Projects https://github.com/sqlc-dev/sqlc/projects
Security and quality https://github.com/sqlc-dev/sqlc/security
Insights https://github.com/sqlc-dev/sqlc/pulse
kyleconroyhttps://github.com/kyleconroy
mainhttps://github.com/sqlc-dev/sqlc/tree/main
kyle/print-asthttps://github.com/sqlc-dev/sqlc/tree/kyle/print-ast
Conversationhttps://github.com/sqlc-dev/sqlc/pull/2815
Commits12 (12)https://github.com/sqlc-dev/sqlc/pull/2815/commits
Checkshttps://github.com/sqlc-dev/sqlc/pull/2815/checks
Files changedhttps://github.com/sqlc-dev/sqlc/pull/2815/files
feat(sql/ast): Render AST to SQLhttps://github.com/sqlc-dev/sqlc/pull/2815#top
kyleconroyhttps://github.com/kyleconroy
mainhttps://github.com/sqlc-dev/sqlc/tree/main
kyle/print-asthttps://github.com/sqlc-dev/sqlc/tree/kyle/print-ast
https://github.com/kyleconroy
kyleconroyhttps://github.com/kyleconroy
Oct 6, 2023https://github.com/sqlc-dev/sqlc/pull/2815#issue-1931034140
Please reload this pagehttps://github.com/sqlc-dev/sqlc/pull/2815
Please reload this pagehttps://github.com/sqlc-dev/sqlc/pull/2815
https://github.com/kyleconroy
kyleconroyhttps://github.com/kyleconroy
October 12, 2023 00:49https://github.com/sqlc-dev/sqlc/pull/2815#event-10625604399
https://github.com/kyleconroy
kyleconroyhttps://github.com/kyleconroy
Oct 12, 2023https://github.com/sqlc-dev/sqlc/pull/2815#event-10625636560
https://github.com/kyleconroy
kyleconroyhttps://github.com/kyleconroy
force-pushedhttps://github.com/sqlc-dev/sqlc/compare/01f7622cce3e8584d7320e4456007ad52986d8c9..bf440e33b5fb698f670f1e8f9f2658f893dd7a91
01f7622https://github.com/sqlc-dev/sqlc/commit/01f7622cce3e8584d7320e4456007ad52986d8c9
bf440e3https://github.com/sqlc-dev/sqlc/commit/bf440e33b5fb698f670f1e8f9f2658f893dd7a91
Compare https://github.com/sqlc-dev/sqlc/compare/01f7622cce3e8584d7320e4456007ad52986d8c9..bf440e33b5fb698f670f1e8f9f2658f893dd7a91
October 12, 2023 01:21https://github.com/sqlc-dev/sqlc/pull/2815#event-10625744555
kyleconroyhttps://github.com/kyleconroy
October 12, 2023 11:46https://github.com/sqlc-dev/sqlc/pull/2815#commits-pushed-feab40b
https://github.com/kyleconroy
feat(sql/ast): Early support for rendering SQL ASThttps://github.com/sqlc-dev/sqlc/pull/2815/commits/feab40b65ba61865d4c500e61c14c730537acb86
feab40bhttps://github.com/sqlc-dev/sqlc/pull/2815/commits/feab40b65ba61865d4c500e61c14c730537acb86
https://github.com/kyleconroy
Support a few more nodeshttps://github.com/sqlc-dev/sqlc/pull/2815/commits/2912c86f8ceab828a5e67bec9c32b12db2969d22
2912c86https://github.com/sqlc-dev/sqlc/pull/2815/commits/2912c86f8ceab828a5e67bec9c32b12db2969d22
https://github.com/kyleconroy
Print more nodeshttps://github.com/sqlc-dev/sqlc/pull/2815/commits/e1479b5bdf512369cc1929c5fa5a228cb87aba86
e1479b5https://github.com/sqlc-dev/sqlc/pull/2815/commits/e1479b5bdf512369cc1929c5fa5a228cb87aba86
https://github.com/kyleconroy
Test all queries in endtoendhttps://github.com/sqlc-dev/sqlc/pull/2815/commits/6e6d1f3b774aea8759ad05d94d9e6f6f8f543101
6e6d1f3https://github.com/sqlc-dev/sqlc/pull/2815/commits/6e6d1f3b774aea8759ad05d94d9e6f6f8f543101
https://github.com/kyleconroy
More Formathttps://github.com/sqlc-dev/sqlc/pull/2815/commits/8a9a3c8ed507bc7dc88441092f3d53d732c7cd88
8a9a3c8https://github.com/sqlc-dev/sqlc/pull/2815/commits/8a9a3c8ed507bc7dc88441092f3d53d732c7cd88
https://github.com/kyleconroy
Close to all tests passinghttps://github.com/sqlc-dev/sqlc/pull/2815/commits/f566907c135f01e14c9806dac61e086263a5a1d4
f566907https://github.com/sqlc-dev/sqlc/pull/2815/commits/f566907c135f01e14c9806dac61e086263a5a1d4
https://github.com/kyleconroy
fmthttps://github.com/sqlc-dev/sqlc/pull/2815/commits/fe5d5c396120b1b163115ccf44f1989a2764ee1d
fe5d5c3https://github.com/sqlc-dev/sqlc/pull/2815/commits/fe5d5c396120b1b163115ccf44f1989a2764ee1d
https://github.com/kyleconroy
All tests pass (for now)https://github.com/sqlc-dev/sqlc/pull/2815/commits/872127d9251fac0cccddd983c8f35be3130800ef
872127dhttps://github.com/sqlc-dev/sqlc/pull/2815/commits/872127d9251fac0cccddd983c8f35be3130800ef
https://github.com/kyleconroy
sometime move package to not mainhttps://github.com/sqlc-dev/sqlc/pull/2815/commits/3ee1612b71ba4e40d45f75ca510f4a79cde43ec1
3ee1612https://github.com/sqlc-dev/sqlc/pull/2815/commits/3ee1612b71ba4e40d45f75ca510f4a79cde43ec1
https://github.com/kyleconroy
fix tests (again)https://github.com/sqlc-dev/sqlc/pull/2815/commits/c30e1f797b0a5f20ae4731d26dff3ec4cffd1232
c30e1f7https://github.com/sqlc-dev/sqlc/pull/2815/commits/c30e1f797b0a5f20ae4731d26dff3ec4cffd1232
https://github.com/kyleconroy
mergehttps://github.com/sqlc-dev/sqlc/pull/2815/commits/15c8702c5d9e611ca3fb51d1b410a8d7248970fd
15c8702https://github.com/sqlc-dev/sqlc/pull/2815/commits/15c8702c5d9e611ca3fb51d1b410a8d7248970fd
https://github.com/kyleconroy
fixhttps://github.com/sqlc-dev/sqlc/pull/2815/commits/43ec6f13ed62b593784ba919b0c0139f42019a05
43ec6f1https://github.com/sqlc-dev/sqlc/pull/2815/commits/43ec6f13ed62b593784ba919b0c0139f42019a05
https://github.com/kyleconroy
kyleconroyhttps://github.com/kyleconroy
force-pushedhttps://github.com/sqlc-dev/sqlc/compare/bf440e33b5fb698f670f1e8f9f2658f893dd7a91..43ec6f13ed62b593784ba919b0c0139f42019a05
bf440e3https://github.com/sqlc-dev/sqlc/commit/bf440e33b5fb698f670f1e8f9f2658f893dd7a91
43ec6f1https://github.com/sqlc-dev/sqlc/commit/43ec6f13ed62b593784ba919b0c0139f42019a05
Compare https://github.com/sqlc-dev/sqlc/compare/bf440e33b5fb698f670f1e8f9f2658f893dd7a91..43ec6f13ed62b593784ba919b0c0139f42019a05
October 12, 2023 18:46https://github.com/sqlc-dev/sqlc/pull/2815#event-10635617648
https://github.com/kyleconroy
kyleconroyhttps://github.com/kyleconroy
53d1792https://github.com/sqlc-dev/sqlc/commit/53d179202ceea914d45a78b85dfc2472494b2004
Oct 12, 2023https://github.com/sqlc-dev/sqlc/pull/2815#event-10635730558
https://github.com/kyleconroy
kyleconroyhttps://github.com/kyleconroy
October 12, 2023 18:57https://github.com/sqlc-dev/sqlc/pull/2815#event-10635730669
https://github.com/p-linnane
p-linnanehttps://github.com/p-linnane
Oct 24, 2023 https://github.com/sqlc-dev/sqlc/pull/2815#ref-pullrequest-1960181296
sqlc 1.23.0 Homebrew/homebrew-core#152306 https://github.com/Homebrew/homebrew-core/pull/152306
alfonsodevhttps://github.com/alfonsodev
Oct 13, 2025 https://github.com/sqlc-dev/sqlc/pull/2815#ref-commit-a536d13
https://github.com/kyleconroy
feat(sql/ast): Render AST to SQL (https://github.com/ExponentiaTeam/sqlc/commit/a536d13f69045a79a9e67452051f6b3d97dfa69f
sqlc-dev#2815https://github.com/sqlc-dev/sqlc/pull/2815
)https://github.com/ExponentiaTeam/sqlc/commit/a536d13f69045a79a9e67452051f6b3d97dfa69f
a536d13https://github.com/ExponentiaTeam/sqlc/commit/a536d13f69045a79a9e67452051f6b3d97dfa69f
https://github.co/hiddenchars
https://github.com/sqlc-dev/sqlc/pull/{{ revealButtonHref }}
Sign up for freehttps://github.com/join?source=comment-repo
Sign in to commenthttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fsqlc-dev%2Fsqlc%2Fpull%2F2815
Please reload this pagehttps://github.com/sqlc-dev/sqlc/pull/2815
https://github.com/kyleconroy
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.