{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":763373658,"defaultBranch":"main","name":"cog3pio","ownerLogin":"weiji14","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2024-02-26T07:07:58.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/23487320?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1720414138.0","currentOid":""},"activityList":{"items":[{"before":"bd59c1c41fc819de4fbebd54218207bf984b17bb","after":null,"ref":"refs/heads/ci/cargo","pushedAt":"2024-07-08T08:20:56.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"}},{"before":"1009387ea45f179c2fd9bbe6efd24b4e873e5fd4","after":"ebd2a31030117243d9dbc85fdd87d1193c8e06d1","ref":"refs/heads/main","pushedAt":"2024-07-08T08:20:56.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":construction_worker: Setup CI job matrix to run cargo test (#17)\n\n* :construction_worker: Setup CI job matrix for cargo test\r\n\r\nEnsure that Rust unit tests and doctests are checked too. Running on Ubuntu-24.04.\r\n\r\n* :pushpin: Test on Rust stable, beta and nightly toolchains\r\n\r\nTest on all three release channels of Rust.\r\n\r\n* :triangular_flag_on_post: Add --crate-type=rlib compilation target\r\n\r\nNeeded to enable doctests, otherwise `cargo test --doc` would error with \"warning: doc tests are not supported for crate type(s) `cdylib` in package `cog3pio`\". Xref https://users.rust-lang.org/t/how-to-run-only-the-doctests/54048/2 and https://github.com/rust-lang/cargo/issues/4717.\r\n\r\n* :green_heart: Fix broken doctest due to mismatched Array type\r\n\r\nUpdate docstring in src/lib.rs to check for an Array3 output from the read_geotiff function. Patches bca4c185e73c4cf4802b03aeb4e8da048c1ffff8.","shortMessageHtmlLink":"๐Ÿ‘ท Setup CI job matrix to run cargo test (#17)"}},{"before":"56771448d5083ffb8c25a45f247ec6563fc8bd2f","after":"bd59c1c41fc819de4fbebd54218207bf984b17bb","ref":"refs/heads/ci/cargo","pushedAt":"2024-07-08T06:41:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":green_heart: Fix broken doctest due to mismatched Array type\n\nUpdate docstring in src/lib.rs to check for an Array3 output from the read_geotiff function. Patches bca4c185e73c4cf4802b03aeb4e8da048c1ffff8.","shortMessageHtmlLink":"๐Ÿ’š Fix broken doctest due to mismatched Array type"}},{"before":"86700506711e39a865fbc4942345f130aec4d10b","after":"56771448d5083ffb8c25a45f247ec6563fc8bd2f","ref":"refs/heads/ci/cargo","pushedAt":"2024-07-08T06:37:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":triangular_flag_on_post: Add --crate-type=rlib compilation target\n\nNeeded to enable doctests, otherwise `cargo test --doc` would error with \"warning: doc tests are not supported for crate type(s) `cdylib` in package `cog3pio`\". Xref https://users.rust-lang.org/t/how-to-run-only-the-doctests/54048/2 and https://github.com/rust-lang/cargo/issues/4717.","shortMessageHtmlLink":"๐Ÿšฉ Add --crate-type=rlib compilation target"}},{"before":"e9eafef17823773ab72d0a4938d8ef716c806a86","after":"86700506711e39a865fbc4942345f130aec4d10b","ref":"refs/heads/ci/cargo","pushedAt":"2024-07-08T05:37:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":pushpin: Test on Rust stable, beta and nightly toolchains\n\nTest on all three release channels of Rust.","shortMessageHtmlLink":"๐Ÿ“Œ Test on Rust stable, beta and nightly toolchains"}},{"before":null,"after":"e9eafef17823773ab72d0a4938d8ef716c806a86","ref":"refs/heads/ci/cargo","pushedAt":"2024-07-08T04:48:58.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":construction_worker: Setup CI job matrix for cargo test\n\nEnsure that Rust unit tests and doctests are checked too. Running on Ubuntu-24.04.","shortMessageHtmlLink":"๐Ÿ‘ท Setup CI job matrix for cargo test"}},{"before":"a6b20dea020c4c94e91aaedfd1f89743a6969561","after":null,"ref":"refs/heads/xarray_backend","pushedAt":"2024-05-09T03:23:23.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"}},{"before":"33285da1280f165d623457c73c1ae55c1674472e","after":"1009387ea45f179c2fd9bbe6efd24b4e873e5fd4","ref":"refs/heads/main","pushedAt":"2024-05-09T03:23:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":sparkles: Implement cog3pio xarray BackendEntrypoint (#14)\n\n* :sparkles: Implement cog3pio xarray BackendEntrypoint\r\n\r\nInitial implementation of a 'cog3pio' xarray BackendEntrypoint for decoding GeoTIFF files! Following instructions at https://docs.xarray.dev/en/v2024.02.0/internals/how-to-add-new-backend.html on registering a backend. Only a minimal implementation for now to read the pixel array data, with dummy x and y coordinates.\r\n\r\n* :heavy_plus_sign: Add xarray\r\n\r\nN-D labeled arrays and datasets in Python!\r\n\r\n* :globe_with_meridians: Decode x and y coordinates from affine transform\r\n\r\nWork out the list of x and y coordinates for the raster grid from the Affine transformation matrix. Requires changes being developed at https://github.com/georust/geo/pull/1159.\r\n\r\n* :construction_worker: Disable CI builds on 32-bit Windows\r\n\r\nGetting an error with compiling pandas 2.2.1 on Windows x86 (32-bit), and pandas has moved away from providing 32-bit Windows wheels, see https://github.com/pandas-dev/pandas/issues/54979, so might as well not build cog3pio wheels for 32-bit Windows since we can't test them properly.\r\n\r\n* :alembic: Benchmark cog3pio engine against rioxarray\r\n\r\nParametrized test to compare loading a GeoTIFF using cog3pio vs rioxarray via their respective xarray BackendEntrypoints. Made a new extras dependency group in pyproject.toml called 'benchmark', and listed both `pytest-codspeed` and `rioxarray` under it.\r\n\r\n* :bug: Add half pixel offset to get centrepoint of top left pixel\r\n\r\nThe affine transform from the GeoTIFF represents the top-left corner of the top-left pixel (gridline registration), but we need to convert that to the center of the top-left pixel (pixel registration) which is what xarray typically assumes. Added some more comments on how the xy_coords is calculated, and updated unit tests with new x/y min/max bounds. Commented out the mean value assertion for now as NaN handling is not implemented yet.\r\n\r\n* :pushpin: Pin to georust/geo at rev 481196b\r\n\r\nGetter methods on AffineTransform implemented in https://github.com/georust/geo/pull/1159 has been merged into the main branch of georust/geo, so no longer need to point to my personal fork. Also fixed a mismatched type when accessing the x_res and y_res attributes.\r\n\r\n* :memo: Document usage of cog3pio xarray backend engine in main README.md\r\n\r\nShow how a GeoTIFF file can be read into an xarray.DataArray object by passing `engine=\"cog3pio\"` to xarray.open_dataarray.\r\n\r\n* :busts_in_silhouette: Push out multi-dtype feature in roadmap to Q2\r\n\r\nThe multiple dtype feature is a little trickier than expected, so will push this out as a medium term goal for Q2 2024. Likely will depend on how the georust/geotiff crate's progress is like.","shortMessageHtmlLink":"โœจ Implement cog3pio xarray BackendEntrypoint (#14)"}},{"before":"7a40655b4739cf3ec307121893cde2e5720260d4","after":"a6b20dea020c4c94e91aaedfd1f89743a6969561","ref":"refs/heads/xarray_backend","pushedAt":"2024-05-09T01:47:00.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":busts_in_silhouette: Push out multi-dtype feature in roadmap to Q2\n\nThe multiple dtype feature is a little trickier than expected, so will push this out as a medium term goal for Q2 2024. Likely will depend on how the georust/geotiff crate's progress is like.","shortMessageHtmlLink":"๐Ÿ‘ฅ Push out multi-dtype feature in roadmap to Q2"}},{"before":"4c08b644ad732766da7459697e4b0e134b08c2fa","after":"7a40655b4739cf3ec307121893cde2e5720260d4","ref":"refs/heads/xarray_backend","pushedAt":"2024-05-09T01:21:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":pushpin: Pin to georust/geo at rev 481196b\n\nGetter methods on AffineTransform implemented in https://github.com/georust/geo/pull/1159 has been merged into the main branch of georust/geo, so no longer need to point to my personal fork. Also fixed a mismatched type when accessing the x_res and y_res attributes.","shortMessageHtmlLink":"๐Ÿ“Œ Pin to georust/geo at rev 481196b"}},{"before":"e0aaac343efe1e1d664420bf42dacd91f74b75fb","after":"4c08b644ad732766da7459697e4b0e134b08c2fa","ref":"refs/heads/xarray_backend","pushedAt":"2024-04-07T23:56:45.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":twisted_rightwards_arrows: Merge branch 'main' into xarray_backend","shortMessageHtmlLink":"๐Ÿ”€ Merge branch 'main' into xarray_backend"}},{"before":"8beb798a9543cba25ba9009241bb73618a779256","after":null,"ref":"refs/heads/pyo3-0.21","pushedAt":"2024-04-07T23:47:50.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"}},{"before":"0f5df6eb50d04941c160d3003e5ae5ad48434c8d","after":"33285da1280f165d623457c73c1ae55c1674472e","ref":"refs/heads/main","pushedAt":"2024-04-07T23:47:49.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":arrow_up: Bump pyo3 from 0.20.3 to 0.21.1, numpy from 0.20.0 to 0.21.0 (#15)\n\n* :arrow_up: Bump pyo3 from 0.20.3 to 0.21.1, numpy from 0.20.0 to 0.21.0\r\n\r\nBumps [pyo3](https://github.com/pyo3/pyo3) from 0.20.3 to 0.21.1.\r\n- [Release notes](https://github.com/pyo3/pyo3/releases)\r\n- [Changelog](https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/pyo3/pyo3/compare/v0.20.3...v0.21.1)\r\n\r\nBumps [numpy](https://github.com/PyO3/rust-numpy) from 0.20.0 to 0.21.0.\r\n- [Release notes](https://github.com/PyO3/rust-numpy/releases)\r\n- [Changelog](https://github.com/PyO3/rust-numpy/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/PyO3/rust-numpy/compare/v0.20.0...v0.21.0)\r\n\r\n* :alien: Migrate to pyo3's new Bound API\r\n\r\nSwitch from pyo3 GIL Ref API to the Bound API. Xref https://polar.sh/davidhewitt/posts/replacing-pyo3-api-pt1 and https://pyo3.rs/v0.21.1/migration#from-020-to-021","shortMessageHtmlLink":"โฌ†๏ธ Bump pyo3 from 0.20.3 to 0.21.1, numpy from 0.20.0 to 0.21.0 (#15)"}},{"before":"6376b1cbf4943e8ad6eca1fa10cbdde1f8a756c0","after":"8beb798a9543cba25ba9009241bb73618a779256","ref":"refs/heads/pyo3-0.21","pushedAt":"2024-04-07T23:21:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":alien: Migrate to pyo3's new Bound API\n\nSwitch from pyo3 GIL Ref API to the Bound API. Xref https://polar.sh/davidhewitt/posts/replacing-pyo3-api-pt1 and https://pyo3.rs/v0.21.1/migration#from-020-to-021","shortMessageHtmlLink":"๐Ÿ‘ฝ Migrate to pyo3's new Bound API"}},{"before":null,"after":"6376b1cbf4943e8ad6eca1fa10cbdde1f8a756c0","ref":"refs/heads/pyo3-0.21","pushedAt":"2024-04-07T23:10:30.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":arrow_up: Bump pyo3 from 0.20.3 to 0.21.1, numpy from 0.20.0 to 0.21.0\n\nBumps [pyo3](https://github.com/pyo3/pyo3) from 0.20.3 to 0.21.1.\n- [Release notes](https://github.com/pyo3/pyo3/releases)\n- [Changelog](https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/pyo3/pyo3/compare/v0.20.3...v0.21.1)\n\nBumps [numpy](https://github.com/PyO3/rust-numpy) from 0.20.0 to 0.21.0.\n- [Release notes](https://github.com/PyO3/rust-numpy/releases)\n- [Changelog](https://github.com/PyO3/rust-numpy/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/PyO3/rust-numpy/compare/v0.20.0...v0.21.0)","shortMessageHtmlLink":"โฌ†๏ธ Bump pyo3 from 0.20.3 to 0.21.1, numpy from 0.20.0 to 0.21.0"}},{"before":"8a7942f05e773cffc5bec25bd583f0626ed9f1fc","after":"e0aaac343efe1e1d664420bf42dacd91f74b75fb","ref":"refs/heads/xarray_backend","pushedAt":"2024-03-26T04:21:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":bug: Add half pixel offset to get centrepoint of top left pixel\n\nThe affine transform from the GeoTIFF represents the top-left corner of the top-left pixel (gridline registration), but we need to convert that to the center of the top-left pixel (pixel registration) which is what xarray typically assumes. Added some more comments on how the xy_coords is calculated, and updated unit tests with new x/y min/max bounds. Commented out the mean value assertion for now as NaN handling is not implemented yet.","shortMessageHtmlLink":"๐Ÿ› Add half pixel offset to get centrepoint of top left pixel"}},{"before":"c87e1964975fb8cd4306e28b350f16a1be7827ff","after":"8a7942f05e773cffc5bec25bd583f0626ed9f1fc","ref":"refs/heads/xarray_backend","pushedAt":"2024-03-26T03:54:04.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":alembic: Benchmark cog3pio engine against rioxarray\n\nParametrized test to compare loading a GeoTIFF using cog3pio vs rioxarray via their respective xarray BackendEntrypoints. Made a new extras dependency group in pyproject.toml called 'benchmark', and listed both `pytest-codspeed` and `rioxarray` under it.","shortMessageHtmlLink":"โš—๏ธ Benchmark cog3pio engine against rioxarray"}},{"before":"4946458cfcb68c9890f09bd53bfd581d37c297ea","after":"c87e1964975fb8cd4306e28b350f16a1be7827ff","ref":"refs/heads/xarray_backend","pushedAt":"2024-03-26T03:49:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":alembic: Benchmark cog3pio engine against rioxarray\n\nParametrized test to compare loading a GeoTIFF using cog3pio vs rioxarray via their respective xarray BackendEntrypoints. Made a new extras dependency group in pyproject.toml called 'benchmark', and listed both `pytest-codspeed` and `rioxarray` under it.","shortMessageHtmlLink":"โš—๏ธ Benchmark cog3pio engine against rioxarray"}},{"before":"899d77dd761575f7aa35c73127917492a9bd0167","after":"4946458cfcb68c9890f09bd53bfd581d37c297ea","ref":"refs/heads/xarray_backend","pushedAt":"2024-03-26T02:39:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":construction_worker: Disable CI builds on 32-bit Windows\n\nGetting an error with compiling pandas 2.2.1 on Windows x86 (32-bit), and pandas has moved away from providing 32-bit Windows wheels, see https://github.com/pandas-dev/pandas/issues/54979, so might as well not build cog3pio wheels for 32-bit Windows since we can't test them properly.","shortMessageHtmlLink":"๐Ÿ‘ท Disable CI builds on 32-bit Windows"}},{"before":"9fee0ede42b2d7c5997dc3c5e968509b6939ef3c","after":"899d77dd761575f7aa35c73127917492a9bd0167","ref":"refs/heads/xarray_backend","pushedAt":"2024-03-25T22:51:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":globe_with_meridians: Decode x and y coordinates from affine transform\n\nWork out the list of x and y coordinates for the raster grid from the Affine transformation matrix. Requires changes being developed at https://github.com/georust/geo/pull/1159.","shortMessageHtmlLink":"๐ŸŒ Decode x and y coordinates from affine transform"}},{"before":"2d15cca0ca51adb5fbf35bcdbbf7ac74fd91f54a","after":"9fee0ede42b2d7c5997dc3c5e968509b6939ef3c","ref":"refs/heads/xarray_backend","pushedAt":"2024-03-25T22:40:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":heavy_plus_sign: Add xarray\n\nN-D labeled arrays and datasets in Python!","shortMessageHtmlLink":"โž• Add xarray"}},{"before":null,"after":"2d15cca0ca51adb5fbf35bcdbbf7ac74fd91f54a","ref":"refs/heads/xarray_backend","pushedAt":"2024-03-25T22:27:36.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":sparkles: Implement cog3pio xarray BackendEntrypoint\n\nInitial implementation of a 'cog3pio' xarray BackendEntrypoint for decoding GeoTIFF files! Following instructions at https://docs.xarray.dev/en/v2024.02.0/internals/how-to-add-new-backend.html on registering a backend. Only a minimal implementation for now to read the pixel array data, with dummy x and y coordinates.","shortMessageHtmlLink":"โœจ Implement cog3pio xarray BackendEntrypoint"}},{"before":"b23a97324bcbf5d94a69c0ca1b427ca461578019","after":"0f5df6eb50d04941c160d3003e5ae5ad48434c8d","ref":"refs/heads/main","pushedAt":"2024-03-25T04:41:12.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":sparkles: Support reading multi-band GeoTIFF files (#13)\n\n* :pushpin: Use image-tiff fork with multi-band support\r\n\r\nPulling from the `multi-band-geotiff` branch from my personal fork, that is currently in a pull request at https://github.com/image-rs/image-tiff/pull/224.\r\n\r\n* :sparkles: Support reading multi-band GeoTIFF files\r\n\r\nCount the number of bands or channels in the GeoTIFF file when decoding by looking at the ColorType. E.g. Gray = 1 band, Multiband = N bands. Added a unit test to read a 2-band float32 GeoTIFF file.\r\n\r\n* :white_check_mark: Pytest check reading multi-band remote GeoTIFF\r\n\r\nEnsure that reading a multi-band GeoTIFF file from a remote URL works.\r\n\r\n* :memo: Update note on multi-band support in main README.md\r\n\r\nAlso clarify that the roadmap item on reading single-band GeoTIFFs is for different dtypes.\r\n\r\n* :pushpin: Pin to image-tiff 0c54a18\r\n\r\nThe Multi-band PR at https://github.com/image-rs/image-tiff/pull/224 has been merged, so updating to use the main branch instead.\r\n\r\n* :goal_net: Return TiffUnsupportedError instead of unimplemented panic\r\n\r\nReplace `unimplemented!` with a recoverable TiffError::UnsupportedError instead to allow for better exception handling. Moved the band counting logic in the ndarray method above the image dimension line, and added a unit test to ensure unsupported ColorType TIFFs are handled properly.","shortMessageHtmlLink":"โœจ Support reading multi-band GeoTIFF files (#13)"}},{"before":"ae35a1338af5ed49ffd0a6ba66030fc2e79c2719","after":null,"ref":"refs/heads/multi-band","pushedAt":"2024-03-25T04:41:12.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"}},{"before":"6cb65cdd892ec35a1525469350995cffa2e0693a","after":"ae35a1338af5ed49ffd0a6ba66030fc2e79c2719","ref":"refs/heads/multi-band","pushedAt":"2024-03-25T04:14:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":goal_net: Return TiffUnsupportedError instead of unimplemented panic\n\nReplace `unimplemented!` with a recoverable TiffError::UnsupportedError instead to allow for better exception handling. Moved the band counting logic in the ndarray method above the image dimension line, and added a unit test to ensure unsupported ColorType TIFFs are handled properly.","shortMessageHtmlLink":"๐Ÿฅ… Return TiffUnsupportedError instead of unimplemented panic"}},{"before":"d3caf4a8fdbf5e7676b03e3fb34841062472402f","after":"6cb65cdd892ec35a1525469350995cffa2e0693a","ref":"refs/heads/multi-band","pushedAt":"2024-03-24T22:20:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":pushpin: Pin to image-tiff 0c54a18\n\nThe Multi-band PR at https://github.com/image-rs/image-tiff/pull/224 has been merged, so updating to use the main branch instead.","shortMessageHtmlLink":"๐Ÿ“Œ Pin to image-tiff 0c54a18"}},{"before":"124c2bf61a4d8c81b1eaf2ed6ae75f9e25b4aa27","after":"d3caf4a8fdbf5e7676b03e3fb34841062472402f","ref":"refs/heads/multi-band","pushedAt":"2024-03-20T02:06:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":memo: Update note on multi-band support in main README.md\n\nAlso clarify that the roadmap item on reading single-band GeoTIFFs is for different dtypes.","shortMessageHtmlLink":"๐Ÿ“ Update note on multi-band support in main README.md"}},{"before":"a3dfa0b9bdd0cc48ba952ae009e792846585d6a5","after":null,"ref":"refs/heads/s3","pushedAt":"2024-03-18T01:57:22.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"}},{"before":null,"after":"a3dfa0b9bdd0cc48ba952ae009e792846585d6a5","ref":"refs/heads/s3","pushedAt":"2024-03-18T01:46:01.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":triangular_flag_on_post: Enable aws feature flag for object_store crate\n\nAllow reading from s3","shortMessageHtmlLink":"๐Ÿšฉ Enable aws feature flag for object_store crate"}},{"before":"867da21dc777e8bbb666757b9b97ab7d31931695","after":"124c2bf61a4d8c81b1eaf2ed6ae75f9e25b4aa27","ref":"refs/heads/multi-band","pushedAt":"2024-03-18T01:07:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weiji14","name":"Wei Ji","path":"/weiji14","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23487320?s=80&v=4"},"commit":{"message":":white_check_mark: Pytest check reading multi-band remote GeoTIFF\n\nEnsure that reading a multi-band GeoTIFF file from a remote URL works.","shortMessageHtmlLink":"โœ… Pytest check reading multi-band remote GeoTIFF"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEeVfXmgA","startCursor":null,"endCursor":null}},"title":"Activity ยท weiji14/cog3pio"}