René's URL Explorer Experiment


Title: Improve semantics of library organization · Issue #579 · QuantConnect/lean-cli · GitHub

Open Graph Title: Improve semantics of library organization · Issue #579 · QuantConnect/lean-cli

X Title: Improve semantics of library organization · Issue #579 · QuantConnect/lean-cli

Description: Currently, the directory Library/ is treated as a hard-coded special case by the lean project-create and lean library add commands. Given that projects list the names and paths of their library dependencies and that libraries also have c...

Open Graph Description: Currently, the directory Library/ is treated as a hard-coded special case by the lean project-create and lean library add commands. Given that projects list the names and paths of their library dep...

X Description: Currently, the directory Library/ is treated as a hard-coded special case by the lean project-create and lean library add commands. Given that projects list the names and paths of their library dep...

Opengraph URL: https://github.com/QuantConnect/lean-cli/issues/579

X: @github

direct link

Domain: patch-diff.githubusercontent.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Improve semantics of library organization","articleBody":"Currently, the directory `Library/` is treated as a hard-coded special case by the `lean project-create` and `lean library add` commands. Given that projects list the names and paths of their library dependencies and that libraries also have `config.json` files, it seems that dropping the hard-coded value in favor of more explicit settings/flags would be cleaner and allow users more flexibility for code organization.\n\nThis assumes that the runtime doesn't treat `Library/`paths as special, which I have not checked.\n\n**Current status:**\n[`is_lean_library()`](https://github.com/QuantConnect/lean-cli/blob/master/lean/components/util/library_manager.py#L64) checks whether the argument to library add starts with `\"Library/\"` to determine its return value, and this is what the `library add` command [uses](https://github.com/QuantConnect/lean-cli/blob/master/lean/commands/library/add.py#L318) to determine whether to add a local library or to install from pypi/nuget.\n\nThe [docs](https://www.quantconnect.com/docs/v2/lean-cli/projects/libraries/project-libraries#02-Create-Libraries\n) say to use `project-create` to create a new library. [`project_create`] looks at whether the path to the project contains `\"Library/\"` and if so, uses the library template and puts it in `Library.py` (instead of `main.py` with the usual algo contents)\nhttps://github.com/QuantConnect/lean-cli/blob/master/lean/commands/create_project.py#L428-L434\nhttps://github.com/QuantConnect/lean-cli/blob/master/lean/commands/create_project.py#L455-L457\n\n**Proposed changes:**\n- introduce an argument to `project-create`, `--library` to indicate that the project is intended to be a library\n- when `\"Library/\"` is in the path according to current logic, but `--library` is not set to true, emit warning log message\n- `is_library_project = is-library-arg OR current logic`\n- modify `project-create` so that it also sets `is-library` in `config.json` when creating a library\n- modify `is_lean_library()` in to use the field in the config rather than the path\n\n**Optional / nice-to-have changes:**\n- introduce `library-create` command, analogous to `project-create`, but for creating libraries\n- factor out common logic between the two commands\n- add a deprecation warning log message to project-create in the library-creation path\n- introduce an argument to the `library add` to explicitly indicate whether the library is local or to be installed from pypi/nuget ","author":{"url":"https://github.com/rz","@type":"Person","name":"rz"},"datePublished":"2025-06-24T00:44:24.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":0},"url":"https://github.com/579/lean-cli/issues/579"}

route-pattern/_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format)
route-controllervoltron_issues_fragments
route-actionissue_layout
fetch-noncev2:384de48f-fb5b-5904-3130-cea5ee48fca6
current-catalog-service-hash81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114
request-idED7E:1B51C4:2477796:308E275:6992E6D9
html-safe-nonce0fd1e36d710d39244d83773ba33da77bd54a4525498e234146112814b2e1a956
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFRDdFOjFCNTFDNDoyNDc3Nzk2OjMwOEUyNzU6Njk5MkU2RDkiLCJ2aXNpdG9yX2lkIjoiMzU5NDkyODg1MTYxOTM0MjA0MiIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac3360d9bfde4368438a2fe514e48df45494df7108d50862015255f805acd16ce3
hovercard-subject-tagissue:3169856824
github-keyboard-shortcutsrepository,issues,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/issues_fragments/issue_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/QuantConnect/lean-cli/579/issue_layout
twitter:imagehttps://opengraph.githubassets.com/d10e057d210ac4a5238eed55f50c5e7ffedad95008eb4f82b44662069ab799ea/QuantConnect/lean-cli/issues/579
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/d10e057d210ac4a5238eed55f50c5e7ffedad95008eb4f82b44662069ab799ea/QuantConnect/lean-cli/issues/579
og:image:altCurrently, the directory Library/ is treated as a hard-coded special case by the lean project-create and lean library add commands. Given that projects list the names and paths of their library dep...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernamerz
hostnamegithub.com
expected-hostnamegithub.com
None42c603b9d642c4a9065a51770f75e5e27132fef0e858607f5c9cb7e422831a7b
turbo-cache-controlno-preview
go-importgithub.com/QuantConnect/lean-cli git https://github.com/QuantConnect/lean-cli.git
octolytics-dimension-user_id3912814
octolytics-dimension-user_loginQuantConnect
octolytics-dimension-repository_id334775686
octolytics-dimension-repository_nwoQuantConnect/lean-cli
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id334775686
octolytics-dimension-repository_network_root_nwoQuantConnect/lean-cli
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
release84dcb133269e3cfe6e0296cc85fbacb92cae92bb
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://patch-diff.githubusercontent.com/QuantConnect/lean-cli/issues/579#start-of-content
https://patch-diff.githubusercontent.com/
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2FQuantConnect%2Flean-cli%2Fissues%2F579
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
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
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
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/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://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2FQuantConnect%2Flean-cli%2Fissues%2F579
Sign up https://patch-diff.githubusercontent.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fissues_fragments%2Fissue_layout&source=header-repo&source_repo=QuantConnect%2Flean-cli
Reloadhttps://patch-diff.githubusercontent.com/QuantConnect/lean-cli/issues/579
Reloadhttps://patch-diff.githubusercontent.com/QuantConnect/lean-cli/issues/579
Reloadhttps://patch-diff.githubusercontent.com/QuantConnect/lean-cli/issues/579
QuantConnect https://patch-diff.githubusercontent.com/QuantConnect
lean-clihttps://patch-diff.githubusercontent.com/QuantConnect/lean-cli
Notifications https://patch-diff.githubusercontent.com/login?return_to=%2FQuantConnect%2Flean-cli
Fork 154 https://patch-diff.githubusercontent.com/login?return_to=%2FQuantConnect%2Flean-cli
Star 285 https://patch-diff.githubusercontent.com/login?return_to=%2FQuantConnect%2Flean-cli
Code https://patch-diff.githubusercontent.com/QuantConnect/lean-cli
Issues 32 https://patch-diff.githubusercontent.com/QuantConnect/lean-cli/issues
Pull requests 0 https://patch-diff.githubusercontent.com/QuantConnect/lean-cli/pulls
Actions https://patch-diff.githubusercontent.com/QuantConnect/lean-cli/actions
Projects 0 https://patch-diff.githubusercontent.com/QuantConnect/lean-cli/projects
Security 0 https://patch-diff.githubusercontent.com/QuantConnect/lean-cli/security
Insights https://patch-diff.githubusercontent.com/QuantConnect/lean-cli/pulse
Code https://patch-diff.githubusercontent.com/QuantConnect/lean-cli
Issues https://patch-diff.githubusercontent.com/QuantConnect/lean-cli/issues
Pull requests https://patch-diff.githubusercontent.com/QuantConnect/lean-cli/pulls
Actions https://patch-diff.githubusercontent.com/QuantConnect/lean-cli/actions
Projects https://patch-diff.githubusercontent.com/QuantConnect/lean-cli/projects
Security https://patch-diff.githubusercontent.com/QuantConnect/lean-cli/security
Insights https://patch-diff.githubusercontent.com/QuantConnect/lean-cli/pulse
New issuehttps://patch-diff.githubusercontent.com/login?return_to=https://github.com/QuantConnect/lean-cli/issues/579
New issuehttps://patch-diff.githubusercontent.com/login?return_to=https://github.com/QuantConnect/lean-cli/issues/579
Improve semantics of library organizationhttps://patch-diff.githubusercontent.com/QuantConnect/lean-cli/issues/579#top
https://github.com/rz
https://github.com/rz
rzhttps://github.com/rz
on Jun 24, 2025https://github.com/QuantConnect/lean-cli/issues/579#issue-3169856824
is_lean_library()https://github.com/QuantConnect/lean-cli/blob/master/lean/components/util/library_manager.py#L64
useshttps://github.com/QuantConnect/lean-cli/blob/master/lean/commands/library/add.py#L318
docshttps://www.quantconnect.com/docs/v2/lean-cli/projects/libraries/project-libraries#02-Create-Libraries
https://github.com/QuantConnect/lean-cli/blob/master/lean/commands/create_project.py#L428-L434https://github.com/QuantConnect/lean-cli/blob/master/lean/commands/create_project.py#L428-L434
https://github.com/QuantConnect/lean-cli/blob/master/lean/commands/create_project.py#L455-L457https://github.com/QuantConnect/lean-cli/blob/master/lean/commands/create_project.py#L455-L457
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.