bed-reader 1.0.5b2__tar.gz → 1.0.5b4__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 (105) hide show
  1. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/.github/workflows/ci.yml +27 -13
  2. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/Cargo.lock +1 -1
  3. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/Cargo.toml +1 -1
  4. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/PKG-INFO +1 -1
  5. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/_open_bed.py +1 -7
  6. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/src/python_module.rs +5 -5
  7. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/useful.md +0 -1
  8. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/.flake8 +0 -0
  9. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/.gitignore +0 -0
  10. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/.isort.cfg +0 -0
  11. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/AUTHORS.txt +0 -0
  12. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/CHANGELOG.md +0 -0
  13. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/LICENSE.md +0 -0
  14. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/README-rust.md +0 -0
  15. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/README.md +0 -0
  16. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/_sphinx_javascript_frameworks_compat.js +0 -0
  17. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/basic.css +0 -0
  18. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/doctools.js +0 -0
  19. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/documentation_options.js +0 -0
  20. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/file.png +0 -0
  21. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/jquery-3.4.1.js +0 -0
  22. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/jquery-3.5.1.js +0 -0
  23. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/jquery-3.6.0.js +0 -0
  24. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/jquery.js +0 -0
  25. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/js/badge_only.js +0 -0
  26. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/js/html5shiv-printshiv.min.js +0 -0
  27. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/js/html5shiv.min.js +0 -0
  28. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/js/modernizr.min.js +0 -0
  29. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/js/theme.js +0 -0
  30. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/language_data.js +0 -0
  31. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/minus.png +0 -0
  32. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/plus.png +0 -0
  33. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/pygments.css +0 -0
  34. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/searchtools.js +0 -0
  35. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/sphinx_highlight.js +0 -0
  36. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/underscore-1.12.0.js +0 -0
  37. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/underscore-1.13.1.js +0 -0
  38. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/underscore-1.3.1.js +0 -0
  39. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/_static/underscore.js +0 -0
  40. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/__init__.py +0 -0
  41. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/_sample_data.py +0 -0
  42. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/_to_bed.py +0 -0
  43. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/__init__.py +0 -0
  44. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/benchmark/bench2.ipynb +0 -0
  45. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/benchmark/benchmark.py +0 -0
  46. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/500x400_o640_array.memmap +0 -0
  47. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/badfile.bed +0 -0
  48. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/empty.bed +0 -0
  49. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/plink_sim_10s_100v_10pmiss.bed +0 -0
  50. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/plink_sim_10s_100v_10pmiss.bim +0 -0
  51. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/plink_sim_10s_100v_10pmiss.fam +0 -0
  52. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small.bad_bim +0 -0
  53. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small.bed +0 -0
  54. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small.bim +0 -0
  55. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small.bim_bad_positions.bim +0 -0
  56. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small.deb +0 -0
  57. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small.fam +0 -0
  58. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small.fam_bad +0 -0
  59. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small.maf +0 -0
  60. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small.mib +0 -0
  61. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small2_array.memmap +0 -0
  62. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small_array.memmap +0 -0
  63. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small_no_bim.bed +0 -0
  64. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small_no_bim.fam +0 -0
  65. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small_no_fam.bed +0 -0
  66. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small_no_fam.bim +0 -0
  67. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small_too_short.bed +0 -0
  68. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small_too_short.bim +0 -0
  69. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/small_too_short.fam +0 -0
  70. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/smallmode0.bed +0 -0
  71. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/smallmode0.bim +0 -0
  72. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/smallmode0.fam +0 -0
  73. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/smallmodebad.bed +0 -0
  74. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/some_missing.bed +0 -0
  75. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/some_missing.bim +0 -0
  76. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/some_missing.fam +0 -0
  77. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/some_missing.properties.npz +0 -0
  78. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/some_missing.val.npy +0 -0
  79. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/sparse.bed +0 -0
  80. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/sparse.bim +0 -0
  81. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/sparse.fam +0 -0
  82. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/toydata.5chrom.bed +0 -0
  83. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/toydata.5chrom.bim +0 -0
  84. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/data/toydata.5chrom.fam +0 -0
  85. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/registry.txt +0 -0
  86. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/test_file_dot.py +0 -0
  87. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/test_open_bed.py +0 -0
  88. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/test_open_bed_cloud.py +0 -0
  89. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/bed_reader/tests/test_opt_dep.py +0 -0
  90. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/build.rs +0 -0
  91. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/examples/cloud.rs +0 -0
  92. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/examples/no_cloud.rs +0 -0
  93. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/pyproject.toml +0 -0
  94. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/pytest.ini +0 -0
  95. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/requirements-dev.txt +0 -0
  96. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/requirements-min-dev.txt +0 -0
  97. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/requirements.txt +0 -0
  98. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/setpath.bat +0 -0
  99. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/src/bed_cloud.rs +0 -0
  100. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/src/lib.rs +0 -0
  101. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/src/supplemental_documents/cloud_urls_etc.md +0 -0
  102. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/src/supplemental_documents/options_etc.md +0 -0
  103. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/src/tests.rs +0 -0
  104. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/tests/tests_api.rs +0 -0
  105. {bed_reader-1.0.5b2 → bed_reader-1.0.5b4}/tests/tests_api_cloud.rs +0 -0
@@ -22,7 +22,7 @@ jobs:
22
22
  strategy:
23
23
  fail-fast: false
24
24
  matrix:
25
- os: [ubuntu-latest, macos-12, windows-latest]
25
+ os: [ubuntu-latest, windows-latest, macos-13, macos-14]
26
26
  runs-on: ${{ matrix.os }}
27
27
  steps:
28
28
  - name: Checkout
@@ -39,7 +39,7 @@ jobs:
39
39
 
40
40
 
41
41
  macos:
42
- runs-on: macos-12
42
+ runs-on: macos-13
43
43
  strategy:
44
44
  matrix:
45
45
  target: [x86_64, aarch64]
@@ -48,7 +48,6 @@ jobs:
48
48
  - uses: actions/setup-python@v4
49
49
  with:
50
50
  python-version: |
51
- 3.8
52
51
  3.9
53
52
  3.10
54
53
  3.11
@@ -58,7 +57,6 @@ jobs:
58
57
  with:
59
58
  target: ${{ matrix.target }}
60
59
  args: --release --out dist --find-interpreter
61
- sccache: 'true'
62
60
  - name: Upload wheels
63
61
  uses: actions/upload-artifact@v3
64
62
  with:
@@ -69,24 +67,42 @@ jobs:
69
67
  runs-on: ubuntu-latest
70
68
  strategy:
71
69
  matrix:
72
- target: [x86_64]
70
+ target: [x86_64, aarch64]
73
71
  steps:
74
72
  - uses: actions/checkout@v3
75
73
  - uses: actions/setup-python@v4
76
74
  with:
77
75
  python-version: |
78
- 3.8
79
76
  3.9
80
77
  3.10
81
78
  3.11
82
79
  3.12
83
- - name: Build wheels
80
+
81
+ - name: Install cross-compilation dependencies
82
+ if: matrix.target == 'aarch64'
83
+ run: |
84
+ sudo apt-get update
85
+ sudo apt-get install -y gcc-aarch64-linux-gnu
86
+
87
+ - name: Build wheels for aarch64
88
+ if: matrix.target == 'aarch64'
89
+ env:
90
+ CC: aarch64-linux-gnu-gcc
91
+ CFLAGS: -march=armv8-a -D__ARM_ARCH=8
84
92
  uses: PyO3/maturin-action@v1
85
93
  with:
86
94
  target: ${{ matrix.target }}
87
- args: --release --out dist --find-interpreter
88
- sccache: 'true'
95
+ args: --release --out dist -i python3.9 -i python3.10 -i python3.11 -i python3.12
89
96
  manylinux: auto
97
+
98
+ - name: Build wheels for x86_64
99
+ if: matrix.target == 'x86_64'
100
+ uses: PyO3/maturin-action@v1
101
+ with:
102
+ target: ${{ matrix.target }}
103
+ args: --release --out dist -i python3.9 -i python3.10 -i python3.11 -i python3.12
104
+ manylinux: auto
105
+
90
106
  - name: Upload wheels
91
107
  uses: actions/upload-artifact@v3
92
108
  with:
@@ -103,7 +119,6 @@ jobs:
103
119
  - uses: actions/setup-python@v4
104
120
  with:
105
121
  python-version: |
106
- 3.8
107
122
  3.9
108
123
  3.10
109
124
  3.11
@@ -114,7 +129,6 @@ jobs:
114
129
  with:
115
130
  target: ${{ matrix.target }}
116
131
  args: --release --out dist --find-interpreter
117
- sccache: 'true'
118
132
  - name: Upload wheels
119
133
  uses: actions/upload-artifact@v3
120
134
  with:
@@ -141,8 +155,8 @@ jobs:
141
155
  strategy:
142
156
  fail-fast: false
143
157
  matrix:
144
- python-version: [3.8, 3.9, "3.10", "3.11", "3.12"]
145
- os: [ubuntu-latest, macos-12, windows-latest]
158
+ python-version: [3.9, "3.10", "3.11", "3.12"]
159
+ os: [ubuntu-latest, windows-latest, macos-13, macos-14]
146
160
  runs-on: ${{ matrix.os }}
147
161
  steps:
148
162
  - name: Checkout
@@ -142,7 +142,7 @@ checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
142
142
 
143
143
  [[package]]
144
144
  name = "bed-reader"
145
- version = "1.0.5-beta.2"
145
+ version = "1.0.5-beta-4"
146
146
  dependencies = [
147
147
  "anyhow",
148
148
  "anyinput",
@@ -1,5 +1,5 @@
1
1
  [package]
2
- version = "1.0.5-beta.2"
2
+ version = "1.0.5-beta-4"
3
3
  name = "bed-reader"
4
4
  description = "Read and write the PLINK BED format, simply and efficiently."
5
5
  repository = "https://github.com/fastlmm/bed-reader"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: bed-reader
3
- Version: 1.0.5b2
3
+ Version: 1.0.5b4
4
4
  Classifier: Programming Language :: Python :: 3.8
5
5
  Classifier: Programming Language :: Python :: 3.9
6
6
  Classifier: Programming Language :: Python :: 3.10
@@ -2,7 +2,6 @@ import logging
2
2
  import multiprocessing
3
3
  import os
4
4
  import re
5
- import sys
6
5
  from dataclasses import dataclass
7
6
  from io import BytesIO
8
7
  from itertools import repeat, takewhile
@@ -1815,12 +1814,7 @@ def _read_csv(filepath, delimiter=None, dtype=None, usecols=None):
1815
1814
  col = transposed[output_index]
1816
1815
 
1817
1816
  # work around numpy/python bug
1818
- if (
1819
- (sys.version_info.major, sys.version_info.minor) <= (3, 9)
1820
- and int(np.__version__.split(".")[0]) >= 2
1821
- and len(col) > 0
1822
- and pattern.fullmatch(col[0])
1823
- ):
1817
+ if len(col) > 0 and pattern.fullmatch(col[0]):
1824
1818
  col = np.array([pattern.fullmatch(x).group(1) for x in col])
1825
1819
 
1826
1820
  # Find the dtype for this column
@@ -50,7 +50,7 @@ fn bed_reader(_py: Python<'_>, m: &Bound<'_, PyModule>) -> PyResult<()> {
50
50
 
51
51
  #[pyfn(m)]
52
52
  fn url_to_bytes(location: &str, options: &Bound<'_, PyDict>) -> Result<Vec<u8>, PyErr> {
53
- let options: HashMap<String, String> = options.extract()?; // cmk
53
+ let options: HashMap<String, String> = options.extract()?;
54
54
  let cloud_file = CloudFile::new_with_options(location, options)
55
55
  .map_err(|e| Box::new(BedErrorPlus::CloudFileError(e)))?;
56
56
  let rt = runtime::Runtime::new()?;
@@ -178,7 +178,7 @@ fn bed_reader(_py: Python<'_>, m: &Bound<'_, PyModule>) -> PyResult<()> {
178
178
 
179
179
  #[pyfn(m)]
180
180
  fn check_file_cloud(location: &str, options: &Bound<'_, PyDict>) -> Result<(), PyErr> {
181
- let options: HashMap<String, String> = options.extract()?; // cmk
181
+ let options: HashMap<String, String> = options.extract()?;
182
182
  runtime::Runtime::new()?.block_on(async {
183
183
  BedCloud::new_with_options(location, options).await?;
184
184
  Ok(())
@@ -200,7 +200,7 @@ fn bed_reader(_py: Python<'_>, m: &Bound<'_, PyModule>) -> PyResult<()> {
200
200
  max_concurrent_requests: usize,
201
201
  max_chunk_bytes: usize,
202
202
  ) -> Result<(), PyErr> {
203
- let options: HashMap<String, String> = options.extract()?; // cmk
203
+ let options: HashMap<String, String> = options.extract()?;
204
204
 
205
205
  let iid_index = iid_index.readonly();
206
206
  let sid_index = sid_index.readonly();
@@ -247,7 +247,7 @@ fn bed_reader(_py: Python<'_>, m: &Bound<'_, PyModule>) -> PyResult<()> {
247
247
  max_concurrent_requests: usize,
248
248
  max_chunk_bytes: usize,
249
249
  ) -> Result<(), PyErr> {
250
- let options: HashMap<String, String> = options.extract()?; // cmk
250
+ let options: HashMap<String, String> = options.extract()?;
251
251
 
252
252
  let iid_index = iid_index.readonly();
253
253
  let sid_index = sid_index.readonly();
@@ -294,7 +294,7 @@ fn bed_reader(_py: Python<'_>, m: &Bound<'_, PyModule>) -> PyResult<()> {
294
294
  max_concurrent_requests: usize,
295
295
  max_chunk_bytes: usize,
296
296
  ) -> Result<(), PyErr> {
297
- let options: HashMap<String, String> = options.extract()?; // cmk
297
+ let options: HashMap<String, String> = options.extract()?;
298
298
 
299
299
  let iid_index = iid_index.readonly();
300
300
  let sid_index = sid_index.readonly();
@@ -4,7 +4,6 @@
4
4
 
5
5
  To get some Rust PyO3 debugging to work I had to set this before starting vscode:
6
6
 
7
- <!-- cmk -->
8
7
  ```cmd
9
8
  set PYO3_PYTHON=C:/Users/carlk/OneDrive/programs/bed-reader/.venv\Scripts\python.exe
10
9
  ```
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes