mirror of
https://github.com/ludo-technologies/pyscn.git
synced 2025-10-06 00:59:45 +03:00
chore: prepare for public repo\n\n- Remove tracked binaries and embedded venv\n- Add SECURITY.md and CODE_OF_CONDUCT.md\n- Update .gitignore to prevent binaries/env from reappearing\n- Fix Makefile to use pyscn module and binary\n- Align CONTRIBUTING links with ludo-technologies/pyscn\n- Update README distribution note (#75)
Co-authored-by: DaisukeYoda <daisukeyoda@users.noreply.github.com>
This commit is contained in:
9
.gitignore
vendored
9
.gitignore
vendored
@@ -18,6 +18,9 @@ go.work
|
||||
vendor/
|
||||
|
||||
# Build output
|
||||
/pyscn
|
||||
/pyscan
|
||||
/pyscn.exe
|
||||
/pyqol
|
||||
/dist/
|
||||
/build/
|
||||
@@ -56,6 +59,10 @@ venv/
|
||||
.venv/
|
||||
env/
|
||||
.env/
|
||||
python/scripts/upload_env/
|
||||
|
||||
# Python packaged binaries (built during wheel creation)
|
||||
python/src/pyscn/bin/
|
||||
|
||||
# Temporary files
|
||||
*.tmp
|
||||
@@ -72,4 +79,4 @@ env/
|
||||
# Internal documentation (sensitive/private)
|
||||
requirements.md
|
||||
AGENTS.md
|
||||
CLAUDE.md
|
||||
CLAUDE.md
|
||||
|
||||
8
CODE_OF_CONDUCT.md
Normal file
8
CODE_OF_CONDUCT.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# Code of Conduct
|
||||
|
||||
We follow the Contributor Covenant Code of Conduct to foster an open and welcoming community.
|
||||
|
||||
https://www.contributor-covenant.org/version/2/1/code_of_conduct/
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported via GitHub issues or privately to the maintainers. Reports will be reviewed and addressed promptly and fairly.
|
||||
|
||||
@@ -25,8 +25,8 @@ Enhancement suggestions are tracked as GitHub issues. Create an issue using the
|
||||
|
||||
Unsure where to begin contributing? You can start by looking through these `good-first-issue` and `help-wanted` issues:
|
||||
|
||||
- [Good first issues](https://github.com/pyscn/pyscn/labels/good%20first%20issue) - issues which should only require a few lines of code
|
||||
- [Help wanted issues](https://github.com/pyscn/pyscn/labels/help%20wanted) - issues which should be a bit more involved
|
||||
- [Good first issues](https://github.com/ludo-technologies/pyscn/labels/good%20first%20issue) - issues which should only require a few lines of code
|
||||
- [Help wanted issues](https://github.com/ludo-technologies/pyscn/labels/help%20wanted) - issues which should be a bit more involved
|
||||
|
||||
## Development Process
|
||||
|
||||
@@ -45,7 +45,7 @@ git clone https://github.com/YOUR_USERNAME/pyscn.git
|
||||
cd pyscn
|
||||
|
||||
# Add upstream remote
|
||||
git remote add upstream https://github.com/pyscn/pyscn.git
|
||||
git remote add upstream https://github.com/ludo-technologies/pyscn.git
|
||||
|
||||
# Install dependencies
|
||||
go mod download
|
||||
@@ -124,4 +124,4 @@ Feel free to open an issue with your question or reach out to the maintainers di
|
||||
|
||||
## Recognition
|
||||
|
||||
Contributors will be recognized in our README and release notes. Thank you for your contributions!
|
||||
Contributors will be recognized in our README and release notes. Thank you for your contributions!
|
||||
|
||||
38
Makefile
38
Makefile
@@ -1,8 +1,8 @@
|
||||
# Makefile for pyqol
|
||||
# Makefile for pyscn
|
||||
|
||||
# Variables
|
||||
BINARY_NAME := pyqol
|
||||
GO_MODULE := github.com/pyqol/pyqol
|
||||
BINARY_NAME := pyscn
|
||||
GO_MODULE := github.com/ludo-technologies/pyscn
|
||||
VERSION := $(shell git describe --tags --always --dirty 2>/dev/null || echo "dev")
|
||||
COMMIT := $(shell git rev-parse --short HEAD 2>/dev/null || echo "unknown")
|
||||
DATE := $(shell date +%Y-%m-%d)
|
||||
@@ -10,7 +10,7 @@ LDFLAGS := -ldflags "-s -w \
|
||||
-X '$(GO_MODULE)/internal/version.Version=$(VERSION)' \
|
||||
-X '$(GO_MODULE)/internal/version.Commit=$(COMMIT)' \
|
||||
-X '$(GO_MODULE)/internal/version.Date=$(DATE)' \
|
||||
-X '$(GO_MODULE)/internal/version.BuiltBy=make'"
|
||||
-X '$(GO_MODULE)/internal/version.BuiltBy=make'"
|
||||
|
||||
# Colors for output
|
||||
GREEN := \033[0;32m
|
||||
@@ -30,7 +30,7 @@ all: test build
|
||||
## build: Build the binary
|
||||
build:
|
||||
@echo "$(GREEN)Building $(BINARY_NAME) $(VERSION)...$(NC)"
|
||||
go build $(LDFLAGS) -o $(BINARY_NAME) ./cmd/pyqol
|
||||
go build $(LDFLAGS) -o $(BINARY_NAME) ./cmd/pyscn
|
||||
|
||||
## test: Run tests
|
||||
test:
|
||||
@@ -60,11 +60,11 @@ clean:
|
||||
## install: Install the binary
|
||||
install: build
|
||||
@echo "$(GREEN)Installing $(BINARY_NAME)...$(NC)"
|
||||
go install $(LDFLAGS) ./cmd/pyqol
|
||||
go install $(LDFLAGS) ./cmd/pyscn
|
||||
|
||||
## run: Run the application
|
||||
run:
|
||||
go run $(LDFLAGS) ./cmd/pyqol
|
||||
go run $(LDFLAGS) ./cmd/pyscn
|
||||
|
||||
## version: Show version information
|
||||
version:
|
||||
@@ -106,18 +106,18 @@ build-all: build-linux build-darwin build-windows
|
||||
|
||||
build-linux:
|
||||
@echo "$(GREEN)Building for Linux...$(NC)"
|
||||
GOOS=linux GOARCH=amd64 go build $(LDFLAGS) -o dist/$(BINARY_NAME)-linux-amd64 ./cmd/pyqol
|
||||
GOOS=linux GOARCH=arm64 go build $(LDFLAGS) -o dist/$(BINARY_NAME)-linux-arm64 ./cmd/pyqol
|
||||
GOOS=linux GOARCH=amd64 go build $(LDFLAGS) -o dist/$(BINARY_NAME)-linux-amd64 ./cmd/pyscn
|
||||
GOOS=linux GOARCH=arm64 go build $(LDFLAGS) -o dist/$(BINARY_NAME)-linux-arm64 ./cmd/pyscn
|
||||
|
||||
build-darwin:
|
||||
@echo "$(GREEN)Building for macOS...$(NC)"
|
||||
GOOS=darwin GOARCH=amd64 go build $(LDFLAGS) -o dist/$(BINARY_NAME)-darwin-amd64 ./cmd/pyqol
|
||||
GOOS=darwin GOARCH=arm64 go build $(LDFLAGS) -o dist/$(BINARY_NAME)-darwin-arm64 ./cmd/pyqol
|
||||
GOOS=darwin GOARCH=amd64 go build $(LDFLAGS) -o dist/$(BINARY_NAME)-darwin-amd64 ./cmd/pyscn
|
||||
GOOS=darwin GOARCH=arm64 go build $(LDFLAGS) -o dist/$(BINARY_NAME)-darwin-arm64 ./cmd/pyscn
|
||||
|
||||
build-windows:
|
||||
@echo "$(GREEN)Building for Windows...$(NC)"
|
||||
GOOS=windows GOARCH=amd64 go build $(LDFLAGS) -o dist/$(BINARY_NAME)-windows-amd64.exe ./cmd/pyqol
|
||||
GOOS=windows GOARCH=arm64 go build $(LDFLAGS) -o dist/$(BINARY_NAME)-windows-arm64.exe ./cmd/pyqol
|
||||
GOOS=windows GOARCH=amd64 go build $(LDFLAGS) -o dist/$(BINARY_NAME)-windows-amd64.exe ./cmd/pyscn
|
||||
GOOS=windows GOARCH=arm64 go build $(LDFLAGS) -o dist/$(BINARY_NAME)-windows-arm64.exe ./cmd/pyscn
|
||||
|
||||
# Python packaging
|
||||
## build-python: Build Python wheels with embedded binaries
|
||||
@@ -128,21 +128,21 @@ build-python:
|
||||
## python-wheel: Build Python wheel for current platform only
|
||||
python-wheel:
|
||||
@echo "$(GREEN)Building Python wheel for current platform...$(NC)"
|
||||
@mkdir -p python/src/pyqol/bin dist
|
||||
go build $(LDFLAGS) -o python/src/pyqol/bin/pyqol-$$(go env GOOS)-$$(go env GOARCH)$$(if [ "$$(go env GOOS)" = "windows" ]; then echo ".exe"; fi) ./cmd/pyqol
|
||||
@mkdir -p python/src/pyscn/bin dist
|
||||
go build $(LDFLAGS) -o python/src/pyscn/bin/pyscn-$$(go env GOOS)-$$(go env GOARCH)$$(if [ "$$(go env GOOS)" = "windows" ]; then echo ".exe"; fi) ./cmd/pyscn
|
||||
python/scripts/create_wheel.sh
|
||||
|
||||
## python-test: Test Python package installation
|
||||
python-test: python-wheel
|
||||
@echo "$(GREEN)Testing Python package...$(NC)"
|
||||
pip install --force-reinstall dist/*.whl
|
||||
@echo "$(GREEN)Testing pyqol command...$(NC)"
|
||||
pyqol --version || pyqol --help
|
||||
@echo "$(GREEN)Testing pyscn command...$(NC)"
|
||||
pyscn --version || pyscn --help
|
||||
|
||||
## python-clean: Clean Python build artifacts
|
||||
python-clean:
|
||||
@echo "$(YELLOW)Cleaning Python build artifacts...$(NC)"
|
||||
rm -rf python/src/pyqol/bin
|
||||
rm -rf python/src/pyscn/bin
|
||||
rm -rf dist
|
||||
rm -rf build
|
||||
rm -rf *.egg-info
|
||||
rm -rf *.egg-info
|
||||
|
||||
11
README.md
11
README.md
@@ -18,8 +18,9 @@ All analyses are available as dedicated commands and via a unified analyze comma
|
||||
## Quick Start
|
||||
|
||||
```bash
|
||||
# Install via pip (recommended)
|
||||
# Install via pip or uv
|
||||
pip install pyscn
|
||||
# or: uv add pyscn
|
||||
|
||||
# Fast quality check (CI-friendly)
|
||||
pyscn check .
|
||||
@@ -186,13 +187,17 @@ Notes:
|
||||
|
||||
## Installation
|
||||
|
||||
### Install via pip (recommended for Python users)
|
||||
### Install via pip or uv (recommended for Python users)
|
||||
|
||||
```bash
|
||||
# Using pip
|
||||
pip install pyscn
|
||||
|
||||
# Using uv (faster, modern Python package manager)
|
||||
uv add pyscn
|
||||
```
|
||||
|
||||
> **Note**: The package is registered on PyPI but will be available once the repository is made public.
|
||||
> Note: pyscn is available on PyPI and GitHub Releases.
|
||||
|
||||
If you prefer to build wheels locally (e.g., for development), see the Python section below.
|
||||
|
||||
|
||||
17
SECURITY.md
Normal file
17
SECURITY.md
Normal file
@@ -0,0 +1,17 @@
|
||||
## Security Policy
|
||||
|
||||
We take security seriously and appreciate responsible disclosure of vulnerabilities.
|
||||
|
||||
Reporting a vulnerability:
|
||||
- Prefer GitHub Security Advisories: open a private report under the "Security" tab of the repository.
|
||||
- If you cannot use advisories, open a minimal issue without sensitive details and request a maintainer to start a private thread.
|
||||
|
||||
Please include:
|
||||
- A clear description of the issue and impact
|
||||
- Steps to reproduce (PoC) and affected versions/platforms
|
||||
- Suggested mitigations if known
|
||||
|
||||
We aim to acknowledge reports within 3 business days and provide status updates until resolution.
|
||||
|
||||
Do not disclose vulnerabilities publicly until a fix is released and coordinated disclosure has been agreed.
|
||||
|
||||
Reference in New Issue
Block a user