Skip to content

feat: change xurl module#28

Closed
yearnfar wants to merge 1 commit intoxdevplatform:mainfrom
gemopto:main
Closed

feat: change xurl module#28
yearnfar wants to merge 1 commit intoxdevplatform:mainfrom
gemopto:main

Conversation

@yearnfar
Copy link

change xurl module from "xurl" to "github.com/xdevplatform/xurl" so we can import this lib in go project

@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@santiagomed
Copy link
Collaborator

Thanks! Can you sign the CLA?

@drqsatoshi
Copy link

this PR was never commited and fully closed, though the .go files have been updated with xurl even though he never signed the CLA>

using gh pr checkout 28 as I have signed the CLA to get these PRs formely closed (my own, and his) and merged offically

[] close PR #28

Copy link

@drQedwards drQedwards left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

root configured correctly to "xdevplatform" but PR #28 had to be closed as the the go Dev never signed the CLA and dissappeared. @santiagomed correctly validated that @yearnfar had enough ample time to get this into GoLang and by closing PR #28 validated the go ahead to make a new PR which allows for @drqsatoshi aka @drQedwards to sign his own CLA because even though the "ROOT" configuration issue has been resolved, the real issue is CWE 665, a failure to initalize the import into the Go Lang Project as a lib dependency package. Calling a library stub of XURL in Go as

import "xurl"

Or

import (
"xurl"
"math/rand"
"pmll"
)

Will fail to initalize the packages regardless of a now configured root.

drQedwards pushed a commit to drQedwards/xurl that referenced this pull request Mar 2, 2026
fix: resolve CWE-665 package initialization so xurl is importable as a Go library (supersedes xdevplatform#28)

PR Body (paste-ready)
This PR replaces xdevplatform#28 and re-submits the fix under @drQedwards so CLA can be signed by the active contributor.

Summary
The root configuration is already correct (xdevplatform), but importing XURL as a Go dependency still failed due to package initialization/layout issues (CWE-665).
This change makes XURL importable as a library while preserving CLI behavior.

Problem
Consumer code like:

import "xurl" (with local replace)
import "github.com/xdevplatform/xurl" (module path)
could fail because the module root was package main (program-only), not an importable package.

Root Cause (CWE-665)
Improper initialization of package boundaries:

Module root implemented as executable (package main)
No importable root package API for library consumers
Fix
Added importable root package API (package xurl) with:
NewRootCommand()
CreateRootCommand(...)
Execute()
Moved CLI entrypoint to main.go
Updated build/install targets to use xurl
Updated docs for:
CLI install path: go install github.com/xdevplatform/xurl/cmd/xurl@latest
Library import usage for consumers
Validation
go test [workspaces](http://_vscodecontentref_/8). passes
go build [workspaces](http://_vscodecontentref_/9). passes
Consumer smoke test passes with local replace:
require xurl v0.0.0
replace xurl => ../xurl
import "xurl"
Notes
pmll-memory-mcp is a Python package (pip) and is not importable in Go as import "pmll" unless a real Go module named pmll exists.
This PR focuses on Go module/package initialization and importability.
Supersedes
Closed PR xdevplatform#28 (CLA/signature unavailable from previous submitter)
CLA-ready checklist for @drQedwards
 Sign CLA at: https://cla-assistant.io/xdevplatform/xurl
 Confirm GitHub account used for signing is @drqsatoshi / @drQedwards
 Re-run CLA check (if still pending): https://cla-assistant.io/check/xdevplatform/xurl?pullRequest=<NEW_PR_NUMBER>
 Ensure PR author is the same account that signed CLA
 Confirm CI checks are green
 Request review from @santiagomed
If you want, I can also draft a shorter “maintainer-facing” variant of this PR body (less narrative, more changelog-style).
drQedwards added a commit to drQedwards/xurl that referenced this pull request Mar 3, 2026
… Go library

Refactor package structure so the module root is an importable library
(package xurl) instead of package main. Moves CLI entrypoint to
cmd/xurl/main.go, updates Makefile and README install paths, and adds
library API surface (NewRootCommand, CreateRootCommand, Execute).

Also includes --app flag credential switching fix with ForApp token
lookups, unconditional WithAppName override, and 18 new tests.

Supersedes closed PR xdevplatform#28 (CLA unsigned by prior contributor).
Resolves CWE-665: improper initialization of resource.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants