Skip to content

Conversation

@CreRecombinase
Copy link

Hi! I ran into some compilation errors re: missing headers and some fiddly uint64_t/uint32_t stuff. While I was poking around I ran a couple linters and came across some exceptions being caught by value

This pull request also adds support for the functional package manager Nix by adding a flake.nix file. I've also updated the README with usage instructions for users and developers.

Exception handling fixes:
- Fix URLRetrievalException caught by value in assembly_checker.cpp
- Fix shared_ptr<Error> caught by value in record.cpp
- Fix std::invalid_argument and std::out_of_range caught by value
- Improves exception safety and prevents unnecessary copying

Include fixes:
- Add missing #include <cstdint> in src/fasta/faidx.cpp
- Fixes uint64_t/uint32_t compilation errors with newer GCC versions

Nix support:
- Add flake.nix for reproducible development environments
- Update README.md with Nix usage instructions for both users and developers
- Enables running tools directly from GitHub without local installation
- Provides dev shell with CMake, Boost, and C++ linters pre-configured

These changes follow modern C++ best practices and improve developer experience.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant