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:
DaisukeYoda
2025-09-09 09:09:39 +09:00
committed by GitHub
parent a1d7ac9aec
commit b828eed307
6 changed files with 64 additions and 27 deletions

9
.gitignore vendored
View File

@@ -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
View 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.

View File

@@ -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!

View File

@@ -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

View File

@@ -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
View 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.