parq-cli 0.1.9__tar.gz → 0.2.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. parq_cli-0.2.1/.claude/settings.json +6 -0
  2. {parq_cli-0.1.9 → parq_cli-0.2.1}/.github/workflows/publish.yml +12 -7
  3. {parq_cli-0.1.9 → parq_cli-0.2.1}/.github/workflows/test.yml +1 -1
  4. parq_cli-0.2.1/.tmp-bench/csv-large.csv +300001 -0
  5. parq_cli-0.2.1/.tmp-bench/csv-small.csv +10001 -0
  6. parq_cli-0.2.1/.tmp-bench/parquet-large.parquet +0 -0
  7. parq_cli-0.2.1/.tmp-bench/parquet-small.parquet +0 -0
  8. parq_cli-0.2.1/AGENTS.md +15 -0
  9. parq_cli-0.2.1/CHANGELOG.md +18 -0
  10. parq_cli-0.2.1/CLAUDE.md +24 -0
  11. parq_cli-0.2.1/PKG-INFO +371 -0
  12. parq_cli-0.2.1/README.md +335 -0
  13. parq_cli-0.2.1/README_CN.md +309 -0
  14. {parq_cli-0.1.9 → parq_cli-0.2.1}/docs/QUICKSTART.md +4 -7
  15. {parq_cli-0.1.9 → parq_cli-0.2.1}/docs/RELEASE.md +6 -2
  16. {parq_cli-0.1.9 → parq_cli-0.2.1}/parq/__init__.py +28 -4
  17. parq_cli-0.2.1/parq/cli.py +648 -0
  18. parq_cli-0.2.1/parq/formats/__init__.py +17 -0
  19. parq_cli-0.2.1/parq/formats/_chunk_writers.py +300 -0
  20. parq_cli-0.2.1/parq/formats/_common.py +242 -0
  21. parq_cli-0.2.1/parq/formats/_csv.py +37 -0
  22. parq_cli-0.2.1/parq/formats/_parquet.py +251 -0
  23. parq_cli-0.2.1/parq/formats/_xlsx.py +317 -0
  24. parq_cli-0.2.1/parq/output.py +331 -0
  25. parq_cli-0.2.1/parq/plain_output.py +261 -0
  26. parq_cli-0.2.1/parq/reader.py +990 -0
  27. {parq_cli-0.1.9 → parq_cli-0.2.1}/pyproject.toml +5 -5
  28. {parq_cli-0.1.9 → parq_cli-0.2.1}/scripts/README.md +1 -1
  29. {parq_cli-0.1.9 → parq_cli-0.2.1}/scripts/performance_benchmark.py +3 -1
  30. parq_cli-0.2.1/tests/test_cli.py +810 -0
  31. {parq_cli-0.1.9 → parq_cli-0.2.1}/tests/test_package_meta.py +21 -1
  32. {parq_cli-0.1.9 → parq_cli-0.2.1}/tests/test_plain_output.py +1 -3
  33. {parq_cli-0.1.9 → parq_cli-0.2.1}/tests/test_reader.py +366 -24
  34. {parq_cli-0.1.9 → parq_cli-0.2.1}/tests/test_release_scripts.py +1 -1
  35. {parq_cli-0.1.9 → parq_cli-0.2.1}/tests/test_workflows.py +11 -0
  36. parq_cli-0.2.1/uv.lock +1064 -0
  37. parq_cli-0.1.9/AGENTS.md +0 -46
  38. parq_cli-0.1.9/PKG-INFO +0 -358
  39. parq_cli-0.1.9/README.md +0 -322
  40. parq_cli-0.1.9/README_CN.md +0 -282
  41. parq_cli-0.1.9/parq/cli.py +0 -336
  42. parq_cli-0.1.9/parq/output.py +0 -239
  43. parq_cli-0.1.9/parq/plain_output.py +0 -132
  44. parq_cli-0.1.9/parq/reader.py +0 -939
  45. parq_cli-0.1.9/tests/test_cli.py +0 -351
  46. parq_cli-0.1.9/uv.lock +0 -527
  47. {parq_cli-0.1.9 → parq_cli-0.2.1}/.gitignore +0 -0
  48. {parq_cli-0.1.9 → parq_cli-0.2.1}/.python-version +0 -0
  49. {parq_cli-0.1.9 → parq_cli-0.2.1}/LICENSE +0 -0
  50. {parq_cli-0.1.9 → parq_cli-0.2.1}/data/test.parquet +0 -0
  51. {parq_cli-0.1.9 → parq_cli-0.2.1}/examples/README.md +0 -0
  52. {parq_cli-0.1.9 → parq_cli-0.2.1}/examples/create_sample_data.py +0 -0
  53. {parq_cli-0.1.9 → parq_cli-0.2.1}/parq/__main__.py +0 -0
  54. {parq_cli-0.1.9 → parq_cli-0.2.1}/scripts/bump_version.py +0 -0
  55. {parq_cli-0.1.9 → parq_cli-0.2.1}/scripts/check_version.py +0 -0
  56. {parq_cli-0.1.9 → parq_cli-0.2.1}/scripts/publish.sh +0 -0
  57. {parq_cli-0.1.9 → parq_cli-0.2.1}/tests/__init__.py +0 -0
  58. {parq_cli-0.1.9 → parq_cli-0.2.1}/tests/conftest.py +0 -0
  59. {parq_cli-0.1.9 → parq_cli-0.2.1}/tests/test_main_entry.py +0 -0
  60. {parq_cli-0.1.9 → parq_cli-0.2.1}/tests/test_output.py +0 -0
  61. {parq_cli-0.1.9 → parq_cli-0.2.1}/tests/test_performance.py +0 -0
@@ -0,0 +1,6 @@
1
+ {
2
+ "env": {
3
+ "CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR": "1"
4
+ },
5
+ "enabledPlugins": {}
6
+ }
@@ -35,8 +35,6 @@ jobs:
35
35
  build-and-publish:
36
36
  needs: pre-publish-tests
37
37
  runs-on: ubuntu-latest
38
- permissions:
39
- id-token: write
40
38
 
41
39
  steps:
42
40
  - name: 📥 Checkout code
@@ -68,10 +66,17 @@ jobs:
68
66
  path: dist/*
69
67
 
70
68
  - name: 🚀 Publish to PyPI
71
- env:
72
- TWINE_USERNAME: __token__
73
- TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
74
- run: twine upload dist/*
69
+ if: startsWith(github.ref, 'refs/tags/v')
70
+ uses: pypa/gh-action-pypi-publish@release/v1
71
+ with:
72
+ user: __token__
73
+ password: ${{ secrets.PYPI_API_TOKEN }}
74
+
75
+ - name: ⛔ Refuse publish outside a version tag
76
+ if: ${{ !startsWith(github.ref, 'refs/tags/v') }}
77
+ run: |
78
+ echo "Refusing to publish: PyPI uploads only run from a v* tag."
79
+ exit 1
75
80
 
76
81
  create-github-release:
77
82
  needs: build-and-publish
@@ -87,7 +92,7 @@ jobs:
87
92
  path: dist
88
93
 
89
94
  - name: 📝 Create GitHub Release
90
- uses: softprops/action-gh-release@v1
95
+ uses: softprops/action-gh-release@v2
91
96
  with:
92
97
  files: dist/*
93
98
  generate_release_notes: true
@@ -12,7 +12,7 @@ jobs:
12
12
  strategy:
13
13
  matrix:
14
14
  os: [ubuntu-latest, windows-latest, macos-latest]
15
- python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
15
+ python-version: ['3.10', '3.11', '3.12', '3.13']
16
16
 
17
17
  steps:
18
18
  - name: 📥 Checkout code