holger-traits 0.6.5

Holger guards your artifacts at rest. May Allfather Odin watch over every bit.
docs.rs failed to build holger-traits-0.6.5
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: holger-traits-0.6.4

holger

Secure artifact server for airgap environments — serves Maven, Python, Rust, npm, NuGet, Go, Gem, Deb, Helm, Docker and more from znippy archives. Replaces Nexus/Artifactory where auditability and airgap compliance matter.

10,084,953 rust crate ops/sec · 32 cores · v0.7.0

Artifact type Single-core ops/sec 32-core ops/sec
rust crate 417,602 10,084,953
python wheel 313,469 7,740,871
java jar 283,015 7,307,041

Benchmark history (manual log)

Version Date Best ops/sec Machine
0.6.4 2026-05-29 10,084,953 (rust crate, 32-core) 32-core
0.7.0 2026-06-13 6,841,254 (rust crate, 32-core) 32-core

Benchmarks

v0.1.0 · oden · 32 cores · 2026-06-15

workload bytes mb_per_sec ops ops_per_sec seconds
blake3_256MiB 0.268B 3,131 0.08
java_jar_mt32 8.289B 3,936 11.163M 5.558M 2.01
java_jar_st 0.342B 163.05 0.461M 0.230M 2.00
memcopy_512MiB 0.537B 2,590 0.20
pip_wheel_mt32 6.573B 3,130 8.960M 4.475M 2.00
pip_wheel_st 0.290B 138.38 0.396M 0.198M 2.00
rust_crate_mt32 9.879B 4,706 15.805M 7.894M 2.00
rust_crate_st 0.391B 186.35 0.626M 0.313M 2.00

Tests

Every Rust test in the workspace (incl. #[tokio::test] async tests), grouped by the standard categories. Run with cargo test --workspace.

Unit tests (109)

file tests
agent/connector/world/src/pip.rs test_normalize_name_basic, test_normalize_name_edge_cases, test_archive_path, test_archive_path_normalization, test_parse_requirements_txt, test_parse_requirements_txt_invalid, test_parse_uv_lockfile
server/lib/src/exposed/tls.rs extracts_common_name_from_cert, empty_chain_yields_no_cn
server/lib/src/proxy.rs fetch_returns_primary_hit_without_consulting_upstreams, fetch_falls_through_to_upstream_on_primary_miss, fetch_returns_none_when_all_miss, http_returns_primary_on_non_404, http_falls_through_to_upstream_on_primary_404, http_returns_404_when_all_404, proxy_name_and_format_delegate_to_primary
server/repository/file-oci/src/lib.rs version_probe, full_push_pull_roundtrip_session_upload, percent_encoded_digest_on_finalize, monolithic_upload, chunked_upload_via_patch, digest_mismatch_rejected, manifest_with_unknown_blob_rejected, unknown_blob_and_manifest_404, malformed_digest_400, traversal_in_image_or_reference_blocked, referenced_digests_scan, put_via_trait_requires_blobs
server/repository/file-rust/src/lib.rs sparse_path_test_1, sparse_path_test_2, sparse_path_test_3, sparse_path_test_n, sparse_path_into_tuple, put_then_fetch_round_trip, fetch_missing_returns_none, list_returns_all_put_artifacts, list_filters_by_name_substring, list_on_missing_base_dir_is_empty, config_json_uses_configurable_base_url, sparse_index_returns_real_checksums, sparse_index_missing_crate_returns_404, download_returns_real_crate_bytes, download_missing_crate_returns_404, streaming_hash_matches_in_memory_hash, cksum_cache_hits_and_invalidates_on_change
server/repository/znippy-composer/src/lib.rs test_new, test_format
server/repository/znippy-conda/src/lib.rs test_new, test_format
server/repository/znippy-deb/src/lib.rs test_new, test_format
server/repository/znippy-docker/src/lib.rs test_new, test_format
server/repository/znippy-gem/src/lib.rs test_new, test_format
server/repository/znippy-go/src/lib.rs test_new, test_format
server/repository/znippy-helm/src/index.rs parse_chart_yaml_extracts_fields, parse_chart_yaml_ignores_nested_and_requires_name_version, chart_meta_from_tgz_roundtrip, digest_is_stable_sha256, generate_index_lists_entry_with_digest_and_url, generate_index_groups_versions_under_one_chart
server/repository/znippy-helm/src/lib.rs test_new, test_format
server/repository/znippy-maven/src/lib.rs test_new_maven_repo, test_readonly, test_format
server/repository/znippy-npm/src/lib.rs test_new, test_format
server/repository/znippy-nuget/src/lib.rs test_new, test_format
server/repository/znippy-package/src/lib.rs test_new, test_format
server/repository/znippy-python/src/lib.rs test_new, test_readonly, test_format, test_normalize_name
server/repository/znippy-rpm/src/lib.rs test_new, test_format
server/repository/znippy-rust/src/lib.rs new_repo_has_no_files, znippy_repo_is_readonly, has_archive_reflects_reader, config_json_uses_configured_base_url, sparse_index_returns_real_checksums_for_archived_crate, sparse_index_returns_404_for_absent_crate, sparse_index_with_multiple_versions_returns_all, download_returns_crate_bytes_from_archive, parse_crate_path_handles_hyphenated_names, list_with_no_reader_is_empty
server/ui/src/app.rs default_preset_is_os_resolved_and_roster_is_facett_presets, switching_preset_rethemes_the_resolved_palette, apply_publishes_the_coherent_legacy_palette_into_egui
server/ui/src/data.rs status_ok_populates_view_and_state_json, status_error_is_surfaced_not_loaded, repos_load_selects_first_and_preserves_selection_by_name, upload_enabled_tracks_selected_repo_writable, fetch_found_sets_size_and_does_not_leak_bytes_into_state_json, fetch_missing_is_not_found_not_error, fetch_transport_error_is_surfaced, put_rejected_on_read_only_repo, put_succeeds_on_writable_repo, combined_state_json_has_all_three_views, archive_lists_files_and_stats, archive_transport_error_is_surfaced, browse_lists_artifacts_for_repo, browse_unknown_repo_is_empty_not_error
traits/src/lib.rs znippy_type_ids_match_znippy_skeletons, format_str_roundtrips_aliases

Integration tests (38)

file tests
agent/cli/tests/integration_holger.rs test_holger_h2c_with_mannequin_nexus, test_oidc_auth_flow_with_mannequin, test_mtls_auth_validation_with_mannequin
agent/cli/tests/integration_latency_bench_twin.rs test_latency_tail_twin_small_scale
agent/cli/tests/integration_latency_tail.rs test_tail_latency_gc_pressure
agent/cli/tests/integration_nexus_bench_twin.rs test_nexus_load_twin_small_scale
agent/cli/tests/integration_nexus_load.rs test_nexus_load_with_real_artifacts
agent/cli/tests/integration_pip.rs test_pip_requirements_txt_to_directory, test_pip_uv_lock_to_directory, test_pip_airgap_and_push_to_mannequin
agent/cli/tests/integration_tar_zstd.rs test_tar_zstd_round_trip_with_mannequin, test_tar_zstd_archive_contents_valid, test_tar_zstd_push_to_holger_with_oidc
mannequin/tests/gui_robot.rs mannequin_gui_renders_three_system_nodes_with_badges, mannequin_gui_click_selects_node_and_state_reflects_it, mannequin_chart_renders_under_every_look_preset
mannequin/tests/smoke_serve.rs mannequin_serve_boots_and_listens
server/lib/tests/integration_oci_tls.rs oci_push_pull_over_tls, writes_blocked_without_auth_reads_open
server/lib/tests/unit_tests.rs test_parse_minimal_config, test_wire_holger, test_rust_api_fetch, test_list_repositories, test_fetch_unknown_repo_errors, test_maven_config
server/repository/znippy-rust/tests/integration_znippy_serve.rs test_znippy_archive_full_roundtrip, test_znippy_archive_smoke, test_all_types_download_pack_benchmark
server/ui/tests/local_core.rs ui_data_round_trips_through_real_local_holger, browse_paginates_with_load_more
server/ui/tests/remote_grpc.rs ui_data_round_trips_over_real_grpc, bearer_token_path_is_wire_correct
server/ui/tests/robot_ui.rs browse_view_state_json_lists_seeded_artifacts, archive_view_state_json_exposes_tree_and_stats
xtask/tests/holger_matrix.rs holger_component_matrix_is_green, holger_matrix_heavy_mannequin_boot, red_cell_shows_up_red_in_the_grid, testmatrix_feature_emits_functional_rows_into_the_sink

Doc tests (0)

(none)

Dependency graph

workspace dependency graph