├── .github
└── workflows
│ ├── ci.yml
│ ├── dist.yml
│ └── docker-release.yml
├── .gitignore
├── Dockerfile
├── LICENSE
├── Makefile
├── README.md
├── commands
├── convert.go
├── create.go
├── down.go
├── redo.go
├── reset.go
├── status.go
├── up.go
└── version.go
├── config
└── config.go
├── converter
├── converter.go
├── goose.go
└── migrate.go
├── docker-compose.yml
├── driver
├── driver.go
├── goose
│ └── driver.go
├── impg
│ └── migrator.go
└── migrate
│ └── migrator.go
├── go.mod
├── go.sum
├── logger
└── zap.go
├── main.go
├── miga.yml
├── tests
├── clickhouse
│ ├── macros.xml
│ ├── remote_servers.xml
│ └── zookeeper.xml
├── config_test.go
├── convert_test.go
├── create_test.go
├── logger_test.go
├── migrations
│ ├── goose
│ │ ├── 00001_users.sql
│ │ ├── 00002_wallets.sql
│ │ ├── 00003_add_users_email.sql
│ │ ├── 00004_text.sql
│ │ ├── 00005_statement.sql
│ │ ├── 00006_goose_issue158.sql
│ │ ├── 00101_wrong.sql
│ │ └── 00102_never.sql
│ ├── goose_clickhouse
│ │ ├── 00001_users.sql
│ │ ├── 00002_wallets.sql
│ │ ├── 00003_add_users_email.sql
│ │ ├── 00101_wrong.sql
│ │ └── 00102_never.sql
│ ├── goose_clickhouse_replicated
│ │ ├── 00001_users.sql
│ │ ├── 00002_wallets.sql
│ │ ├── 00003_add_users_email.sql
│ │ ├── 00101_wrong.sql
│ │ └── 00102_never.sql
│ ├── goose_starrocks
│ │ ├── 00001_users.sql
│ │ ├── 00002_wallets.sql
│ │ ├── 00003_add_users_email.sql
│ │ ├── 00004_text.sql
│ │ ├── 00101_wrong.sql
│ │ └── 00102_never.sql
│ ├── impg
│ │ ├── 101_wrong.down.sql
│ │ ├── 101_wrong.up.sql
│ │ ├── 102_never.down.sql
│ │ ├── 102_never.up.sql
│ │ ├── 1_users.down.sql
│ │ ├── 1_users.up.sql
│ │ ├── 2_wallets.down.sql
│ │ ├── 2_wallets.up.sql
│ │ ├── 3_add_users_email.down.sql
│ │ ├── 3_add_users_email.up.sql
│ │ ├── 4_text.down.sql
│ │ ├── 4_text.up.sql
│ │ ├── 5_statement.down.sql
│ │ ├── 5_statement.up.sql
│ │ ├── 6_goose_issue158.down.sql
│ │ └── 6_goose_issue158.up.sql
│ └── migrate
│ │ ├── 101_wrong.down.sql
│ │ ├── 101_wrong.up.sql
│ │ ├── 102_never.down.sql
│ │ ├── 102_never.up.sql
│ │ ├── 1_users.down.sql
│ │ ├── 1_users.up.sql
│ │ ├── 2_wallets.down.sql
│ │ ├── 2_wallets.up.sql
│ │ ├── 3_add_users_email.down.sql
│ │ ├── 3_add_users_email.up.sql
│ │ ├── 4_text.down.sql
│ │ ├── 4_text.up.sql
│ │ ├── 5_statement.down.sql
│ │ ├── 5_statement.up.sql
│ │ ├── 6_goose_issue158.down.sql
│ │ └── 6_goose_issue158.up.sql
├── migrations_test.go
└── vars.go
├── utils
├── file.go
└── logger.go
└── vendor
├── filippo.io
└── edwards25519
│ ├── LICENSE
│ ├── README.md
│ ├── doc.go
│ ├── edwards25519.go
│ ├── extra.go
│ ├── field
│ ├── fe.go
│ ├── fe_amd64.go
│ ├── fe_amd64.s
│ ├── fe_amd64_noasm.go
│ ├── fe_arm64.go
│ ├── fe_arm64.s
│ ├── fe_arm64_noasm.go
│ ├── fe_extra.go
│ └── fe_generic.go
│ ├── scalar.go
│ ├── scalar_fiat.go
│ ├── scalarmult.go
│ └── tables.go
├── github.com
├── ClickHouse
│ ├── ch-go
│ │ ├── AUTHORS
│ │ ├── LICENSE
│ │ ├── compress
│ │ │ ├── compress.go
│ │ │ ├── method_enum.go
│ │ │ ├── reader.go
│ │ │ └── writer.go
│ │ └── proto
│ │ │ ├── block.go
│ │ │ ├── bool.go
│ │ │ ├── buffer.go
│ │ │ ├── client_code.go
│ │ │ ├── client_code_enum.go
│ │ │ ├── client_data.go
│ │ │ ├── client_hello.go
│ │ │ ├── client_info.go
│ │ │ ├── client_info_interface_enum.go
│ │ │ ├── client_info_query_enum.go
│ │ │ ├── col_arr.go
│ │ │ ├── col_auto.go
│ │ │ ├── col_auto_gen.go
│ │ │ ├── col_bool.go
│ │ │ ├── col_bool_safe.go
│ │ │ ├── col_bool_unsafe.go
│ │ │ ├── col_date.go
│ │ │ ├── col_date32.go
│ │ │ ├── col_date32_gen.go
│ │ │ ├── col_date32_safe_gen.go
│ │ │ ├── col_date32_unsafe_gen.go
│ │ │ ├── col_date_gen.go
│ │ │ ├── col_date_safe_gen.go
│ │ │ ├── col_date_unsafe_gen.go
│ │ │ ├── col_datetime.go
│ │ │ ├── col_datetime64.go
│ │ │ ├── col_datetime64_safe_gen.go
│ │ │ ├── col_datetime64_unsafe_gen.go
│ │ │ ├── col_datetime_safe_gen.go
│ │ │ ├── col_datetime_unsafe_gen.go
│ │ │ ├── col_decimal128_gen.go
│ │ │ ├── col_decimal128_safe_gen.go
│ │ │ ├── col_decimal128_unsafe_gen.go
│ │ │ ├── col_decimal256_gen.go
│ │ │ ├── col_decimal256_safe_gen.go
│ │ │ ├── col_decimal256_unsafe_gen.go
│ │ │ ├── col_decimal32_gen.go
│ │ │ ├── col_decimal32_safe_gen.go
│ │ │ ├── col_decimal32_unsafe_gen.go
│ │ │ ├── col_decimal64_gen.go
│ │ │ ├── col_decimal64_safe_gen.go
│ │ │ ├── col_decimal64_unsafe_gen.go
│ │ │ ├── col_enum.go
│ │ │ ├── col_enum16_gen.go
│ │ │ ├── col_enum16_safe_gen.go
│ │ │ ├── col_enum16_unsafe_gen.go
│ │ │ ├── col_enum8_gen.go
│ │ │ ├── col_enum8_safe_gen.go
│ │ │ ├── col_enum8_unsafe_gen.go
│ │ │ ├── col_fixed_str.go
│ │ │ ├── col_fixedstr128_gen.go
│ │ │ ├── col_fixedstr128_safe_gen.go
│ │ │ ├── col_fixedstr128_unsafe_gen.go
│ │ │ ├── col_fixedstr16_gen.go
│ │ │ ├── col_fixedstr16_safe_gen.go
│ │ │ ├── col_fixedstr16_unsafe_gen.go
│ │ │ ├── col_fixedstr256_gen.go
│ │ │ ├── col_fixedstr256_safe_gen.go
│ │ │ ├── col_fixedstr256_unsafe_gen.go
│ │ │ ├── col_fixedstr32_gen.go
│ │ │ ├── col_fixedstr32_safe_gen.go
│ │ │ ├── col_fixedstr32_unsafe_gen.go
│ │ │ ├── col_fixedstr512_gen.go
│ │ │ ├── col_fixedstr512_safe_gen.go
│ │ │ ├── col_fixedstr512_unsafe_gen.go
│ │ │ ├── col_fixedstr64_gen.go
│ │ │ ├── col_fixedstr64_safe_gen.go
│ │ │ ├── col_fixedstr64_unsafe_gen.go
│ │ │ ├── col_fixedstr8_gen.go
│ │ │ ├── col_fixedstr8_safe_gen.go
│ │ │ ├── col_fixedstr8_unsafe_gen.go
│ │ │ ├── col_float32_gen.go
│ │ │ ├── col_float32_safe_gen.go
│ │ │ ├── col_float32_unsafe_gen.go
│ │ │ ├── col_float64_gen.go
│ │ │ ├── col_float64_safe_gen.go
│ │ │ ├── col_float64_unsafe_gen.go
│ │ │ ├── col_int128_gen.go
│ │ │ ├── col_int128_safe_gen.go
│ │ │ ├── col_int128_unsafe_gen.go
│ │ │ ├── col_int16_gen.go
│ │ │ ├── col_int16_safe_gen.go
│ │ │ ├── col_int16_unsafe_gen.go
│ │ │ ├── col_int256_gen.go
│ │ │ ├── col_int256_safe_gen.go
│ │ │ ├── col_int256_unsafe_gen.go
│ │ │ ├── col_int32_gen.go
│ │ │ ├── col_int32_safe_gen.go
│ │ │ ├── col_int32_unsafe_gen.go
│ │ │ ├── col_int64_gen.go
│ │ │ ├── col_int64_safe_gen.go
│ │ │ ├── col_int64_unsafe_gen.go
│ │ │ ├── col_int8_gen.go
│ │ │ ├── col_int8_safe_gen.go
│ │ │ ├── col_int8_unsafe_gen.go
│ │ │ ├── col_interval.go
│ │ │ ├── col_ipv4_gen.go
│ │ │ ├── col_ipv4_safe_gen.go
│ │ │ ├── col_ipv4_unsafe_gen.go
│ │ │ ├── col_ipv6_gen.go
│ │ │ ├── col_ipv6_safe_gen.go
│ │ │ ├── col_ipv6_unsafe_gen.go
│ │ │ ├── col_low_cardinality.go
│ │ │ ├── col_low_cardinality_enum.go
│ │ │ ├── col_low_cardinality_raw.go
│ │ │ ├── col_map.go
│ │ │ ├── col_nothing.go
│ │ │ ├── col_nullable.go
│ │ │ ├── col_point.go
│ │ │ ├── col_raw.go
│ │ │ ├── col_raw_of.go
│ │ │ ├── col_str.go
│ │ │ ├── col_tuple.go
│ │ │ ├── col_uint128_gen.go
│ │ │ ├── col_uint128_safe_gen.go
│ │ │ ├── col_uint128_unsafe_gen.go
│ │ │ ├── col_uint16_gen.go
│ │ │ ├── col_uint16_safe_gen.go
│ │ │ ├── col_uint16_unsafe_gen.go
│ │ │ ├── col_uint256_gen.go
│ │ │ ├── col_uint256_safe_gen.go
│ │ │ ├── col_uint256_unsafe_gen.go
│ │ │ ├── col_uint32_gen.go
│ │ │ ├── col_uint32_safe_gen.go
│ │ │ ├── col_uint32_unsafe_gen.go
│ │ │ ├── col_uint64_gen.go
│ │ │ ├── col_uint64_safe_gen.go
│ │ │ ├── col_uint64_unsafe_gen.go
│ │ │ ├── col_uint8_gen.go
│ │ │ ├── col_uint8_safe_gen.go
│ │ │ ├── col_uuid.go
│ │ │ ├── col_uuid_safe.go
│ │ │ ├── col_uuid_unsafe.go
│ │ │ ├── column.go
│ │ │ ├── compression.go
│ │ │ ├── compression_enum.go
│ │ │ ├── date.go
│ │ │ ├── date32.go
│ │ │ ├── datetime.go
│ │ │ ├── datetime64.go
│ │ │ ├── decimal.go
│ │ │ ├── enum16.go
│ │ │ ├── enum8.go
│ │ │ ├── error.go
│ │ │ ├── error_codes.go
│ │ │ ├── error_enum.go
│ │ │ ├── exception.go
│ │ │ ├── feature.go
│ │ │ ├── feature_enum.go
│ │ │ ├── gen.go
│ │ │ ├── int128.go
│ │ │ ├── int256.go
│ │ │ ├── interval_enum.go
│ │ │ ├── ipv4.go
│ │ │ ├── ipv6.go
│ │ │ ├── profile.go
│ │ │ ├── profile_enum.go
│ │ │ ├── profile_events.go
│ │ │ ├── progress.go
│ │ │ ├── proto.go
│ │ │ ├── query.go
│ │ │ ├── reader.go
│ │ │ ├── reset.go
│ │ │ ├── results.go
│ │ │ ├── server_code.go
│ │ │ ├── server_code_enum.go
│ │ │ ├── server_hello.go
│ │ │ ├── server_log.go
│ │ │ ├── slice_unsafe.go
│ │ │ ├── stage.go
│ │ │ ├── stage_enum.go
│ │ │ └── table_columns.go
│ └── clickhouse-go
│ │ └── v2
│ │ ├── .gitignore
│ │ ├── .golangci.yaml
│ │ ├── CHANGELOG.md
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── TYPES.md
│ │ ├── batch.go
│ │ ├── bind.go
│ │ ├── clickhouse.go
│ │ ├── clickhouse_options.go
│ │ ├── clickhouse_rows.go
│ │ ├── clickhouse_rows_column_type.go
│ │ ├── clickhouse_std.go
│ │ ├── client_info.go
│ │ ├── conn.go
│ │ ├── conn_async_insert.go
│ │ ├── conn_batch.go
│ │ ├── conn_check.go
│ │ ├── conn_check_ping.go
│ │ ├── conn_exec.go
│ │ ├── conn_handshake.go
│ │ ├── conn_http.go
│ │ ├── conn_http_async_insert.go
│ │ ├── conn_http_batch.go
│ │ ├── conn_http_exec.go
│ │ ├── conn_http_query.go
│ │ ├── conn_logs.go
│ │ ├── conn_ping.go
│ │ ├── conn_process.go
│ │ ├── conn_profile_events.go
│ │ ├── conn_query.go
│ │ ├── conn_send_query.go
│ │ ├── context.go
│ │ ├── context_watchdog.go
│ │ ├── contributors
│ │ ├── contributors.go
│ │ └── list
│ │ ├── docker-compose.yml
│ │ ├── ext
│ │ └── ext.go
│ │ ├── go.test.sh
│ │ ├── lib
│ │ ├── binary
│ │ │ ├── string.go
│ │ │ ├── string_safe.go
│ │ │ └── string_unsafe.go
│ │ ├── column
│ │ │ ├── array.go
│ │ │ ├── array_gen.go
│ │ │ ├── bigint.go
│ │ │ ├── bool.go
│ │ │ ├── column.go
│ │ │ ├── column_gen.go
│ │ │ ├── column_gen_option.go
│ │ │ ├── date.go
│ │ │ ├── date32.go
│ │ │ ├── datetime.go
│ │ │ ├── datetime64.go
│ │ │ ├── decimal.go
│ │ │ ├── enum.go
│ │ │ ├── enum16.go
│ │ │ ├── enum8.go
│ │ │ ├── fixed_string.go
│ │ │ ├── geo_multi_polygon.go
│ │ │ ├── geo_point.go
│ │ │ ├── geo_polygon.go
│ │ │ ├── geo_ring.go
│ │ │ ├── interval.go
│ │ │ ├── ipv4.go
│ │ │ ├── ipv6.go
│ │ │ ├── json.go
│ │ │ ├── lowcardinality.go
│ │ │ ├── map.go
│ │ │ ├── nested.go
│ │ │ ├── nothing.go
│ │ │ ├── nullable.go
│ │ │ ├── simple_aggregate_function.go
│ │ │ ├── slice_helper.go
│ │ │ ├── string.go
│ │ │ ├── tuple.go
│ │ │ └── uuid.go
│ │ ├── driver
│ │ │ ├── driver.go
│ │ │ └── options.go
│ │ ├── proto
│ │ │ ├── block.go
│ │ │ ├── const.go
│ │ │ ├── exception.go
│ │ │ ├── handshake.go
│ │ │ ├── profile_info.go
│ │ │ ├── progress.go
│ │ │ ├── query.go
│ │ │ └── table_columns.go
│ │ └── timezone
│ │ │ └── timezone.go
│ │ ├── query_parameters.go
│ │ ├── resources
│ │ ├── meta.go
│ │ └── meta.yml
│ │ ├── scan.go
│ │ ├── struct_map.go
│ │ └── v1_v2_CHANGES.md
├── andybalholm
│ └── brotli
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── backward_references.go
│ │ ├── backward_references_hq.go
│ │ ├── bit_cost.go
│ │ ├── bit_reader.go
│ │ ├── bitwriter.go
│ │ ├── block_splitter.go
│ │ ├── block_splitter_command.go
│ │ ├── block_splitter_distance.go
│ │ ├── block_splitter_literal.go
│ │ ├── brotli_bit_stream.go
│ │ ├── cluster.go
│ │ ├── cluster_command.go
│ │ ├── cluster_distance.go
│ │ ├── cluster_literal.go
│ │ ├── command.go
│ │ ├── compress_fragment.go
│ │ ├── compress_fragment_two_pass.go
│ │ ├── constants.go
│ │ ├── context.go
│ │ ├── decode.go
│ │ ├── dictionary.go
│ │ ├── dictionary_hash.go
│ │ ├── encode.go
│ │ ├── encoder.go
│ │ ├── encoder_dict.go
│ │ ├── entropy_encode.go
│ │ ├── entropy_encode_static.go
│ │ ├── fast_log.go
│ │ ├── find_match_length.go
│ │ ├── h10.go
│ │ ├── h5.go
│ │ ├── h6.go
│ │ ├── hash.go
│ │ ├── hash_composite.go
│ │ ├── hash_forgetful_chain.go
│ │ ├── hash_longest_match_quickly.go
│ │ ├── hash_rolling.go
│ │ ├── histogram.go
│ │ ├── http.go
│ │ ├── huffman.go
│ │ ├── literal_cost.go
│ │ ├── matchfinder
│ │ ├── emitter.go
│ │ ├── m0.go
│ │ ├── m4.go
│ │ ├── matchfinder.go
│ │ └── textencoder.go
│ │ ├── memory.go
│ │ ├── metablock.go
│ │ ├── metablock_command.go
│ │ ├── metablock_distance.go
│ │ ├── metablock_literal.go
│ │ ├── params.go
│ │ ├── platform.go
│ │ ├── prefix.go
│ │ ├── prefix_dec.go
│ │ ├── quality.go
│ │ ├── reader.go
│ │ ├── ringbuffer.go
│ │ ├── state.go
│ │ ├── static_dict.go
│ │ ├── static_dict_lut.go
│ │ ├── symbol_list.go
│ │ ├── transform.go
│ │ ├── utf8_util.go
│ │ ├── util.go
│ │ ├── write_bits.go
│ │ └── writer.go
├── elastic
│ ├── go-sysinfo
│ │ ├── .editorconfig
│ │ ├── .gitattributes
│ │ ├── .gitignore
│ │ ├── .golangci.yml
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE.txt
│ │ ├── Makefile
│ │ ├── NOTICE.txt
│ │ ├── README.md
│ │ ├── internal
│ │ │ └── registry
│ │ │ │ └── registry.go
│ │ ├── providers
│ │ │ ├── aix
│ │ │ │ ├── boottime_aix_ppc64.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── host_aix_ppc64.go
│ │ │ │ ├── kernel_aix_ppc64.go
│ │ │ │ ├── machineid_aix_ppc64.go
│ │ │ │ ├── os_aix_ppc64.go
│ │ │ │ ├── process_aix_ppc64.go
│ │ │ │ └── ztypes_aix_ppc64.go
│ │ │ ├── darwin
│ │ │ │ ├── arch_darwin.go
│ │ │ │ ├── boottime_darwin.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── host_darwin.go
│ │ │ │ ├── kernel_darwin.go
│ │ │ │ ├── load_average_darwin.go
│ │ │ │ ├── machineid_darwin.go
│ │ │ │ ├── machineid_nocgo_darwin.go
│ │ │ │ ├── memory_darwin.go
│ │ │ │ ├── os.go
│ │ │ │ ├── process_cgo_darwin.go
│ │ │ │ ├── process_darwin.go
│ │ │ │ ├── process_nocgo_darwin.go
│ │ │ │ ├── syscall_cgo_darwin.go
│ │ │ │ ├── syscall_darwin.go
│ │ │ │ ├── syscall_nocgo_darwin.go
│ │ │ │ └── ztypes_darwin.go
│ │ │ ├── linux
│ │ │ │ ├── arch_linux.go
│ │ │ │ ├── boottime_linux.go
│ │ │ │ ├── capabilities_linux.go
│ │ │ │ ├── container.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── host_linux.go
│ │ │ │ ├── kernel_linux.go
│ │ │ │ ├── machineid.go
│ │ │ │ ├── memory_linux.go
│ │ │ │ ├── os.go
│ │ │ │ ├── process_linux.go
│ │ │ │ ├── procnet.go
│ │ │ │ ├── seccomp_linux.go
│ │ │ │ ├── util.go
│ │ │ │ └── vmstat.go
│ │ │ ├── shared
│ │ │ │ ├── fqdn.go
│ │ │ │ └── network.go
│ │ │ └── windows
│ │ │ │ ├── arch_windows.go
│ │ │ │ ├── boottime_windows.go
│ │ │ │ ├── device_windows.go
│ │ │ │ ├── doc.go
│ │ │ │ ├── helpers_windows.go
│ │ │ │ ├── host_windows.go
│ │ │ │ ├── kernel_windows.go
│ │ │ │ ├── machineid_windows.go
│ │ │ │ ├── os_windows.go
│ │ │ │ └── process_windows.go
│ │ ├── system.go
│ │ └── types
│ │ │ ├── errors.go
│ │ │ ├── go.go
│ │ │ ├── host.go
│ │ │ └── process.go
│ └── go-windows
│ │ ├── .appveyor.yml
│ │ ├── .gitattributes
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE.txt
│ │ ├── NOTICE.txt
│ │ ├── README.md
│ │ ├── Vagrantfile
│ │ ├── constants.go
│ │ ├── doc.go
│ │ ├── kernel32.go
│ │ ├── ntdll.go
│ │ ├── psapi.go
│ │ ├── utf16.go
│ │ ├── version.go
│ │ └── zsyscall_windows.go
├── fsnotify
│ └── fsnotify
│ │ ├── .editorconfig
│ │ ├── .gitattributes
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── AUTHORS
│ │ ├── CHANGELOG.md
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── fen.go
│ │ ├── fsnotify.go
│ │ ├── inotify.go
│ │ ├── inotify_poller.go
│ │ ├── kqueue.go
│ │ ├── open_mode_bsd.go
│ │ ├── open_mode_darwin.go
│ │ └── windows.go
├── go-faster
│ ├── city
│ │ ├── .codecov.yml
│ │ ├── .gitignore
│ │ ├── .golangci.yml
│ │ ├── 128.go
│ │ ├── 32.go
│ │ ├── 64.go
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── ch_128.go
│ │ ├── ch_64.go
│ │ ├── doc.go
│ │ ├── go.coverage.sh
│ │ └── go.test.sh
│ └── errors
│ │ ├── .codecov.yml
│ │ ├── .editorconfig
│ │ ├── .gitignore
│ │ ├── .golangci.yml
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── adaptor.go
│ │ ├── doc.go
│ │ ├── errors.go
│ │ ├── format.go
│ │ ├── frame.go
│ │ ├── go.coverage.sh
│ │ ├── go.test.sh
│ │ ├── into.go
│ │ ├── join_go120.go
│ │ ├── must.go
│ │ ├── noerrtrace.go
│ │ ├── trace.go
│ │ └── wrap.go
├── go-pg
│ └── pg
│ │ ├── .travis.yml
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── base.go
│ │ ├── db.go
│ │ ├── doc.go
│ │ ├── error.go
│ │ ├── hook.go
│ │ ├── internal
│ │ ├── buf_reader.go
│ │ ├── bytes_reader.go
│ │ ├── error.go
│ │ ├── internal.go
│ │ ├── iszero
│ │ │ └── iszero.go
│ │ ├── log.go
│ │ ├── parser
│ │ │ ├── parser.go
│ │ │ ├── streaming_parser.go
│ │ │ └── util.go
│ │ ├── pool
│ │ │ ├── conn.go
│ │ │ ├── pool.go
│ │ │ ├── pool_single.go
│ │ │ └── write_buffer.go
│ │ ├── reader.go
│ │ ├── safe.go
│ │ ├── strconv.go
│ │ ├── struct_filter
│ │ │ ├── field.go
│ │ │ ├── scan.go
│ │ │ ├── struct.go
│ │ │ └── structs.go
│ │ ├── tag
│ │ │ └── tag.go
│ │ ├── underscore.go
│ │ ├── unsafe.go
│ │ └── util.go
│ │ ├── listener.go
│ │ ├── messages.go
│ │ ├── options.go
│ │ ├── orm
│ │ ├── composite.go
│ │ ├── composite_create.go
│ │ ├── composite_drop.go
│ │ ├── composite_parser.go
│ │ ├── count_estimate.go
│ │ ├── delete.go
│ │ ├── field.go
│ │ ├── format.go
│ │ ├── hook.go
│ │ ├── inflection.go
│ │ ├── insert.go
│ │ ├── join.go
│ │ ├── model.go
│ │ ├── model_discard.go
│ │ ├── model_func.go
│ │ ├── model_scan.go
│ │ ├── model_slice.go
│ │ ├── model_table.go
│ │ ├── model_table_m2m.go
│ │ ├── model_table_many.go
│ │ ├── model_table_slice.go
│ │ ├── model_table_struct.go
│ │ ├── orm.go
│ │ ├── query.go
│ │ ├── relation.go
│ │ ├── result.go
│ │ ├── select.go
│ │ ├── struct_filter.go
│ │ ├── table.go
│ │ ├── table_create.go
│ │ ├── table_drop.go
│ │ ├── table_params.go
│ │ ├── tables.go
│ │ ├── update.go
│ │ └── util.go
│ │ ├── pg.go
│ │ ├── result.go
│ │ ├── stmt.go
│ │ ├── tx.go
│ │ └── types
│ │ ├── append.go
│ │ ├── append_field.go
│ │ ├── append_jsonb.go
│ │ ├── append_value.go
│ │ ├── array.go
│ │ ├── array_append.go
│ │ ├── array_parser.go
│ │ ├── array_scan.go
│ │ ├── hstore.go
│ │ ├── hstore_append.go
│ │ ├── hstore_parser.go
│ │ ├── hstore_scan.go
│ │ ├── in_op.go
│ │ ├── interface.go
│ │ ├── null_time.go
│ │ ├── scan.go
│ │ ├── scan_value.go
│ │ └── time.go
├── go-sql-driver
│ └── mysql
│ │ ├── .gitignore
│ │ ├── AUTHORS
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── atomic_bool.go
│ │ ├── atomic_bool_go118.go
│ │ ├── auth.go
│ │ ├── buffer.go
│ │ ├── collations.go
│ │ ├── conncheck.go
│ │ ├── conncheck_dummy.go
│ │ ├── connection.go
│ │ ├── connector.go
│ │ ├── const.go
│ │ ├── driver.go
│ │ ├── dsn.go
│ │ ├── errors.go
│ │ ├── fields.go
│ │ ├── infile.go
│ │ ├── nulltime.go
│ │ ├── packets.go
│ │ ├── result.go
│ │ ├── rows.go
│ │ ├── statement.go
│ │ ├── transaction.go
│ │ └── utils.go
├── golang-migrate
│ └── migrate
│ │ └── v4
│ │ ├── .dockerignore
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── CONTRIBUTING.md
│ │ ├── Dockerfile
│ │ ├── FAQ.md
│ │ ├── Gopkg.lock
│ │ ├── Gopkg.toml
│ │ ├── LICENSE
│ │ ├── MIGRATIONS.md
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── database
│ │ ├── driver.go
│ │ ├── error.go
│ │ ├── mysql
│ │ │ ├── README.md
│ │ │ └── mysql.go
│ │ ├── postgres
│ │ │ ├── README.md
│ │ │ └── postgres.go
│ │ └── util.go
│ │ ├── docker-deploy.sh
│ │ ├── log.go
│ │ ├── migrate.go
│ │ ├── migration.go
│ │ ├── source
│ │ ├── driver.go
│ │ ├── file
│ │ │ ├── README.md
│ │ │ └── file.go
│ │ ├── migration.go
│ │ └── parse.go
│ │ └── util.go
├── google
│ └── uuid
│ │ ├── CHANGELOG.md
│ │ ├── CONTRIBUTING.md
│ │ ├── CONTRIBUTORS
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── dce.go
│ │ ├── doc.go
│ │ ├── hash.go
│ │ ├── marshal.go
│ │ ├── node.go
│ │ ├── node_js.go
│ │ ├── node_net.go
│ │ ├── null.go
│ │ ├── sql.go
│ │ ├── time.go
│ │ ├── util.go
│ │ ├── uuid.go
│ │ ├── version1.go
│ │ ├── version4.go
│ │ ├── version6.go
│ │ └── version7.go
├── gopherjs
│ └── gopherjs
│ │ ├── LICENSE
│ │ └── js
│ │ └── js.go
├── hashicorp
│ ├── errwrap
│ │ ├── LICENSE
│ │ ├── README.md
│ │ └── errwrap.go
│ ├── go-multierror
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── append.go
│ │ ├── flatten.go
│ │ ├── format.go
│ │ ├── multierror.go
│ │ ├── prefix.go
│ │ └── sort.go
│ └── hcl
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── appveyor.yml
│ │ ├── decoder.go
│ │ ├── hcl.go
│ │ ├── hcl
│ │ ├── ast
│ │ │ ├── ast.go
│ │ │ └── walk.go
│ │ ├── parser
│ │ │ ├── error.go
│ │ │ └── parser.go
│ │ ├── printer
│ │ │ ├── nodes.go
│ │ │ └── printer.go
│ │ ├── scanner
│ │ │ └── scanner.go
│ │ ├── strconv
│ │ │ └── quote.go
│ │ └── token
│ │ │ ├── position.go
│ │ │ └── token.go
│ │ ├── json
│ │ ├── parser
│ │ │ ├── flatten.go
│ │ │ └── parser.go
│ │ ├── scanner
│ │ │ └── scanner.go
│ │ └── token
│ │ │ ├── position.go
│ │ │ └── token.go
│ │ ├── lex.go
│ │ └── parse.go
├── im-kulikov
│ └── migrate
│ │ ├── .gitignore
│ │ ├── Gopkg.lock
│ │ ├── Gopkg.toml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── helpers.go
│ │ ├── migrate.go
│ │ └── vars.go
├── inconshreveable
│ └── mousetrap
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── trap_others.go
│ │ ├── trap_windows.go
│ │ └── trap_windows_1.4.go
├── jinzhu
│ └── inflection
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── inflections.go
│ │ └── wercker.yml
├── joeshaw
│ └── multierror
│ │ ├── LICENSE
│ │ ├── README.md
│ │ └── multierror.go
├── jtolds
│ └── gls
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── context.go
│ │ ├── gen_sym.go
│ │ ├── gid.go
│ │ ├── id_pool.go
│ │ ├── stack_tags.go
│ │ ├── stack_tags_js.go
│ │ └── stack_tags_main.go
├── klauspost
│ └── compress
│ │ ├── .gitattributes
│ │ ├── .gitignore
│ │ ├── .goreleaser.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── compressible.go
│ │ ├── fse
│ │ ├── README.md
│ │ ├── bitreader.go
│ │ ├── bitwriter.go
│ │ ├── bytereader.go
│ │ ├── compress.go
│ │ ├── decompress.go
│ │ └── fse.go
│ │ ├── gen.sh
│ │ ├── huff0
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── bitreader.go
│ │ ├── bitwriter.go
│ │ ├── compress.go
│ │ ├── decompress.go
│ │ ├── decompress_amd64.go
│ │ ├── decompress_amd64.s
│ │ ├── decompress_generic.go
│ │ └── huff0.go
│ │ ├── internal
│ │ ├── cpuinfo
│ │ │ ├── cpuinfo.go
│ │ │ ├── cpuinfo_amd64.go
│ │ │ └── cpuinfo_amd64.s
│ │ └── snapref
│ │ │ ├── LICENSE
│ │ │ ├── decode.go
│ │ │ ├── decode_other.go
│ │ │ ├── encode.go
│ │ │ ├── encode_other.go
│ │ │ └── snappy.go
│ │ ├── s2sx.mod
│ │ ├── s2sx.sum
│ │ └── zstd
│ │ ├── README.md
│ │ ├── bitreader.go
│ │ ├── bitwriter.go
│ │ ├── blockdec.go
│ │ ├── blockenc.go
│ │ ├── blocktype_string.go
│ │ ├── bytebuf.go
│ │ ├── bytereader.go
│ │ ├── decodeheader.go
│ │ ├── decoder.go
│ │ ├── decoder_options.go
│ │ ├── dict.go
│ │ ├── enc_base.go
│ │ ├── enc_best.go
│ │ ├── enc_better.go
│ │ ├── enc_dfast.go
│ │ ├── enc_fast.go
│ │ ├── encoder.go
│ │ ├── encoder_options.go
│ │ ├── framedec.go
│ │ ├── frameenc.go
│ │ ├── fse_decoder.go
│ │ ├── fse_decoder_amd64.go
│ │ ├── fse_decoder_amd64.s
│ │ ├── fse_decoder_generic.go
│ │ ├── fse_encoder.go
│ │ ├── fse_predefined.go
│ │ ├── hash.go
│ │ ├── history.go
│ │ ├── internal
│ │ └── xxhash
│ │ │ ├── LICENSE.txt
│ │ │ ├── README.md
│ │ │ ├── xxhash.go
│ │ │ ├── xxhash_amd64.s
│ │ │ ├── xxhash_arm64.s
│ │ │ ├── xxhash_asm.go
│ │ │ ├── xxhash_other.go
│ │ │ └── xxhash_safe.go
│ │ ├── matchlen_amd64.go
│ │ ├── matchlen_amd64.s
│ │ ├── matchlen_generic.go
│ │ ├── seqdec.go
│ │ ├── seqdec_amd64.go
│ │ ├── seqdec_amd64.s
│ │ ├── seqdec_generic.go
│ │ ├── seqenc.go
│ │ ├── snappy.go
│ │ ├── zip.go
│ │ └── zstd.go
├── lib
│ └── pq
│ │ ├── .gitignore
│ │ ├── LICENSE.md
│ │ ├── README.md
│ │ ├── TESTS.md
│ │ ├── array.go
│ │ ├── buf.go
│ │ ├── conn.go
│ │ ├── conn_go18.go
│ │ ├── connector.go
│ │ ├── copy.go
│ │ ├── doc.go
│ │ ├── encode.go
│ │ ├── error.go
│ │ ├── krb.go
│ │ ├── notice.go
│ │ ├── notify.go
│ │ ├── oid
│ │ ├── doc.go
│ │ └── types.go
│ │ ├── rows.go
│ │ ├── scram
│ │ └── scram.go
│ │ ├── ssl.go
│ │ ├── ssl_permissions.go
│ │ ├── ssl_windows.go
│ │ ├── url.go
│ │ ├── user_other.go
│ │ ├── user_posix.go
│ │ ├── user_windows.go
│ │ └── uuid.go
├── magiconair
│ └── properties
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE.md
│ │ ├── README.md
│ │ ├── decode.go
│ │ ├── doc.go
│ │ ├── integrate.go
│ │ ├── lex.go
│ │ ├── load.go
│ │ ├── parser.go
│ │ ├── properties.go
│ │ └── rangecheck.go
├── mfridman
│ └── interpolate
│ │ ├── LICENSE.txt
│ │ ├── README.md
│ │ ├── env.go
│ │ ├── interpolate.go
│ │ └── parser.go
├── mitchellh
│ └── mapstructure
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── decode_hooks.go
│ │ ├── error.go
│ │ └── mapstructure.go
├── paulmach
│ └── orb
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE.md
│ │ ├── README.md
│ │ ├── bound.go
│ │ ├── clone.go
│ │ ├── codecov.yml
│ │ ├── define.go
│ │ ├── equal.go
│ │ ├── geometry.go
│ │ ├── line_string.go
│ │ ├── multi_line_string.go
│ │ ├── multi_point.go
│ │ ├── multi_polygon.go
│ │ ├── point.go
│ │ ├── polygon.go
│ │ ├── ring.go
│ │ └── round.go
├── pelletier
│ └── go-toml
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── benchmark.json
│ │ ├── benchmark.sh
│ │ ├── benchmark.toml
│ │ ├── benchmark.yml
│ │ ├── doc.go
│ │ ├── example-crlf.toml
│ │ ├── example.toml
│ │ ├── fuzz.go
│ │ ├── fuzz.sh
│ │ ├── keysparsing.go
│ │ ├── lexer.go
│ │ ├── marshal.go
│ │ ├── marshal_test.toml
│ │ ├── parser.go
│ │ ├── position.go
│ │ ├── test.sh
│ │ ├── token.go
│ │ ├── toml.go
│ │ ├── tomltree_create.go
│ │ └── tomltree_write.go
├── pierrec
│ └── lz4
│ │ └── v4
│ │ ├── .gitignore
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── compressing_reader.go
│ │ ├── internal
│ │ ├── lz4block
│ │ │ ├── block.go
│ │ │ ├── blocks.go
│ │ │ ├── decode_amd64.s
│ │ │ ├── decode_arm.s
│ │ │ ├── decode_arm64.s
│ │ │ ├── decode_asm.go
│ │ │ └── decode_other.go
│ │ ├── lz4errors
│ │ │ └── errors.go
│ │ ├── lz4stream
│ │ │ ├── block.go
│ │ │ ├── frame.go
│ │ │ └── frame_gen.go
│ │ └── xxh32
│ │ │ ├── xxh32zero.go
│ │ │ ├── xxh32zero_arm.go
│ │ │ ├── xxh32zero_arm.s
│ │ │ └── xxh32zero_other.go
│ │ ├── lz4.go
│ │ ├── options.go
│ │ ├── options_gen.go
│ │ ├── reader.go
│ │ ├── state.go
│ │ ├── state_gen.go
│ │ └── writer.go
├── pkg
│ └── errors
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── appveyor.yml
│ │ ├── errors.go
│ │ ├── go113.go
│ │ └── stack.go
├── pressly
│ └── goose
│ │ └── v3
│ │ ├── .gitignore
│ │ ├── .goreleaser.yaml
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── create.go
│ │ ├── database
│ │ ├── dialect.go
│ │ ├── doc.go
│ │ ├── sql_extended.go
│ │ └── store.go
│ │ ├── db.go
│ │ ├── dialect.go
│ │ ├── down.go
│ │ ├── fix.go
│ │ ├── globals.go
│ │ ├── goose.go
│ │ ├── helpers.go
│ │ ├── install.sh
│ │ ├── internal
│ │ ├── dialect
│ │ │ ├── dialectquery
│ │ │ │ ├── clickhouse.go
│ │ │ │ ├── dialectquery.go
│ │ │ │ ├── mysql.go
│ │ │ │ ├── postgres.go
│ │ │ │ ├── redshift.go
│ │ │ │ ├── sqlite3.go
│ │ │ │ ├── sqlserver.go
│ │ │ │ ├── starrocks.go
│ │ │ │ ├── tidb.go
│ │ │ │ ├── turso.go
│ │ │ │ ├── vertica.go
│ │ │ │ └── ydb.go
│ │ │ ├── dialects.go
│ │ │ └── store.go
│ │ ├── gooseutil
│ │ │ └── resolve.go
│ │ └── sqlparser
│ │ │ ├── parse.go
│ │ │ └── parser.go
│ │ ├── lock
│ │ ├── postgres.go
│ │ ├── session_locker.go
│ │ └── session_locker_options.go
│ │ ├── log.go
│ │ ├── migrate.go
│ │ ├── migration.go
│ │ ├── migration_sql.go
│ │ ├── osfs.go
│ │ ├── provider.go
│ │ ├── provider_collect.go
│ │ ├── provider_errors.go
│ │ ├── provider_options.go
│ │ ├── provider_run.go
│ │ ├── provider_types.go
│ │ ├── redo.go
│ │ ├── register.go
│ │ ├── reset.go
│ │ ├── status.go
│ │ ├── up.go
│ │ └── version.go
├── prometheus
│ └── procfs
│ │ ├── .gitignore
│ │ ├── .golangci.yml
│ │ ├── CODE_OF_CONDUCT.md
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE
│ │ ├── MAINTAINERS.md
│ │ ├── Makefile
│ │ ├── Makefile.common
│ │ ├── NOTICE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── arp.go
│ │ ├── buddyinfo.go
│ │ ├── cmdline.go
│ │ ├── cpuinfo.go
│ │ ├── cpuinfo_armx.go
│ │ ├── cpuinfo_loong64.go
│ │ ├── cpuinfo_mipsx.go
│ │ ├── cpuinfo_others.go
│ │ ├── cpuinfo_ppcx.go
│ │ ├── cpuinfo_riscvx.go
│ │ ├── cpuinfo_s390x.go
│ │ ├── cpuinfo_x86.go
│ │ ├── crypto.go
│ │ ├── doc.go
│ │ ├── fs.go
│ │ ├── fs_statfs_notype.go
│ │ ├── fs_statfs_type.go
│ │ ├── fscache.go
│ │ ├── internal
│ │ ├── fs
│ │ │ └── fs.go
│ │ └── util
│ │ │ ├── parse.go
│ │ │ ├── readfile.go
│ │ │ ├── sysreadfile.go
│ │ │ ├── sysreadfile_compat.go
│ │ │ └── valueparser.go
│ │ ├── ipvs.go
│ │ ├── kernel_random.go
│ │ ├── loadavg.go
│ │ ├── mdstat.go
│ │ ├── meminfo.go
│ │ ├── mountinfo.go
│ │ ├── mountstats.go
│ │ ├── net_conntrackstat.go
│ │ ├── net_dev.go
│ │ ├── net_ip_socket.go
│ │ ├── net_protocols.go
│ │ ├── net_route.go
│ │ ├── net_sockstat.go
│ │ ├── net_softnet.go
│ │ ├── net_tcp.go
│ │ ├── net_udp.go
│ │ ├── net_unix.go
│ │ ├── net_wireless.go
│ │ ├── net_xfrm.go
│ │ ├── netstat.go
│ │ ├── proc.go
│ │ ├── proc_cgroup.go
│ │ ├── proc_cgroups.go
│ │ ├── proc_environ.go
│ │ ├── proc_fdinfo.go
│ │ ├── proc_interrupts.go
│ │ ├── proc_io.go
│ │ ├── proc_limits.go
│ │ ├── proc_maps.go
│ │ ├── proc_netstat.go
│ │ ├── proc_ns.go
│ │ ├── proc_psi.go
│ │ ├── proc_smaps.go
│ │ ├── proc_snmp.go
│ │ ├── proc_snmp6.go
│ │ ├── proc_stat.go
│ │ ├── proc_status.go
│ │ ├── proc_sys.go
│ │ ├── schedstat.go
│ │ ├── slab.go
│ │ ├── softirqs.go
│ │ ├── stat.go
│ │ ├── swaps.go
│ │ ├── thread.go
│ │ ├── ttar
│ │ ├── vm.go
│ │ └── zoneinfo.go
├── segmentio
│ └── asm
│ │ ├── LICENSE
│ │ ├── bswap
│ │ ├── swap64.go
│ │ ├── swap64_amd64.go
│ │ ├── swap64_amd64.s
│ │ └── swap64_default.go
│ │ └── cpu
│ │ ├── arm
│ │ └── arm.go
│ │ ├── arm64
│ │ └── arm64.go
│ │ ├── cpu.go
│ │ ├── cpuid
│ │ └── cpuid.go
│ │ └── x86
│ │ └── x86.go
├── sethvargo
│ └── go-retry
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── backoff.go
│ │ ├── backoff_constant.go
│ │ ├── backoff_exponential.go
│ │ ├── backoff_fibonacci.go
│ │ ├── rand.go
│ │ └── retry.go
├── shopspring
│ └── decimal
│ │ ├── .gitignore
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── const.go
│ │ ├── decimal-go.go
│ │ ├── decimal.go
│ │ └── rounding.go
├── smartystreets
│ ├── assertions
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE.md
│ │ ├── README.md
│ │ ├── collections.go
│ │ ├── doc.go
│ │ ├── equal_method.go
│ │ ├── equality.go
│ │ ├── filter.go
│ │ ├── internal
│ │ │ ├── go-render
│ │ │ │ ├── LICENSE
│ │ │ │ └── render
│ │ │ │ │ ├── render.go
│ │ │ │ │ └── render_time.go
│ │ │ └── oglematchers
│ │ │ │ ├── .gitignore
│ │ │ │ ├── .travis.yml
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── any_of.go
│ │ │ │ ├── contains.go
│ │ │ │ ├── deep_equals.go
│ │ │ │ ├── equals.go
│ │ │ │ ├── greater_or_equal.go
│ │ │ │ ├── greater_than.go
│ │ │ │ ├── less_or_equal.go
│ │ │ │ ├── less_than.go
│ │ │ │ ├── matcher.go
│ │ │ │ ├── not.go
│ │ │ │ └── transform_description.go
│ │ ├── messages.go
│ │ ├── panic.go
│ │ ├── quantity.go
│ │ ├── serializer.go
│ │ ├── strings.go
│ │ ├── time.go
│ │ └── type.go
│ └── goconvey
│ │ ├── LICENSE.md
│ │ └── convey
│ │ ├── assertions.go
│ │ ├── context.go
│ │ ├── convey.goconvey
│ │ ├── discovery.go
│ │ ├── doc.go
│ │ ├── gotest
│ │ └── utils.go
│ │ ├── init.go
│ │ ├── nilReporter.go
│ │ └── reporting
│ │ ├── console.go
│ │ ├── doc.go
│ │ ├── dot.go
│ │ ├── gotest.go
│ │ ├── init.go
│ │ ├── json.go
│ │ ├── printer.go
│ │ ├── problems.go
│ │ ├── reporter.go
│ │ ├── reporting.goconvey
│ │ ├── reports.go
│ │ ├── statistics.go
│ │ └── story.go
├── spf13
│ ├── afero
│ │ ├── .travis.yml
│ │ ├── LICENSE.txt
│ │ ├── README.md
│ │ ├── afero.go
│ │ ├── appveyor.yml
│ │ ├── basepath.go
│ │ ├── cacheOnReadFs.go
│ │ ├── const_bsds.go
│ │ ├── const_win_unix.go
│ │ ├── copyOnWriteFs.go
│ │ ├── httpFs.go
│ │ ├── ioutil.go
│ │ ├── lstater.go
│ │ ├── match.go
│ │ ├── mem
│ │ │ ├── dir.go
│ │ │ ├── dirmap.go
│ │ │ └── file.go
│ │ ├── memmap.go
│ │ ├── os.go
│ │ ├── path.go
│ │ ├── readonlyfs.go
│ │ ├── regexpfs.go
│ │ ├── unionFile.go
│ │ └── util.go
│ ├── cast
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── cast.go
│ │ └── caste.go
│ ├── cobra
│ │ ├── .gitignore
│ │ ├── .golangci.yml
│ │ ├── .mailmap
│ │ ├── CONDUCT.md
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE.txt
│ │ ├── MAINTAINERS
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── active_help.go
│ │ ├── active_help.md
│ │ ├── args.go
│ │ ├── bash_completions.go
│ │ ├── bash_completions.md
│ │ ├── bash_completionsV2.go
│ │ ├── cobra.go
│ │ ├── command.go
│ │ ├── command_notwin.go
│ │ ├── command_win.go
│ │ ├── completions.go
│ │ ├── fish_completions.go
│ │ ├── fish_completions.md
│ │ ├── flag_groups.go
│ │ ├── powershell_completions.go
│ │ ├── powershell_completions.md
│ │ ├── projects_using_cobra.md
│ │ ├── shell_completions.go
│ │ ├── shell_completions.md
│ │ ├── user_guide.md
│ │ ├── zsh_completions.go
│ │ └── zsh_completions.md
│ ├── jwalterweatherman
│ │ ├── .gitignore
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── default_notepad.go
│ │ ├── log_counter.go
│ │ └── notepad.go
│ ├── pflag
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bool.go
│ │ ├── bool_slice.go
│ │ ├── bytes.go
│ │ ├── count.go
│ │ ├── duration.go
│ │ ├── duration_slice.go
│ │ ├── flag.go
│ │ ├── float32.go
│ │ ├── float32_slice.go
│ │ ├── float64.go
│ │ ├── float64_slice.go
│ │ ├── golangflag.go
│ │ ├── int.go
│ │ ├── int16.go
│ │ ├── int32.go
│ │ ├── int32_slice.go
│ │ ├── int64.go
│ │ ├── int64_slice.go
│ │ ├── int8.go
│ │ ├── int_slice.go
│ │ ├── ip.go
│ │ ├── ip_slice.go
│ │ ├── ipmask.go
│ │ ├── ipnet.go
│ │ ├── string.go
│ │ ├── string_array.go
│ │ ├── string_slice.go
│ │ ├── string_to_int.go
│ │ ├── string_to_int64.go
│ │ ├── string_to_string.go
│ │ ├── uint.go
│ │ ├── uint16.go
│ │ ├── uint32.go
│ │ ├── uint64.go
│ │ ├── uint8.go
│ │ └── uint_slice.go
│ └── viper
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── flags.go
│ │ ├── util.go
│ │ └── viper.go
└── vertica
│ └── vertica-sql-go
│ ├── .gitignore
│ ├── CONTRIBUTING.md
│ ├── LICENSE
│ ├── README.md
│ ├── common
│ ├── fileutils.go
│ ├── osutils.go
│ └── types.go
│ ├── connection.go
│ ├── context.go
│ ├── driver.go
│ ├── errors.go
│ ├── logger
│ ├── filelogger.go
│ ├── logger.go
│ └── stdiologger.go
│ ├── msgs
│ ├── beauthenticationmsg.go
│ ├── bebindcompletemsg.go
│ ├── beclosecompletemsg.go
│ ├── becmdcompletemsg.go
│ ├── becmddescriptionmsg.go
│ ├── bedatarowmsg.go
│ ├── beemptyqueryrespmsg.go
│ ├── beerrormsg.go
│ ├── beinitstdinloadmsg.go
│ ├── bekeydatamsg.go
│ ├── beloadbalancemsg.go
│ ├── beloadnewfilemsg.go
│ ├── benodatamsg.go
│ ├── benoticemsg.go
│ ├── beparameterdescmsg.go
│ ├── beparamstatusmsg.go
│ ├── beparsecomplete.go
│ ├── beportalsuspendedmsg.go
│ ├── bereadyforquerymsg.go
│ ├── berowdescmsg.go
│ ├── beverifyloadfilesmsg.go
│ ├── bewritefilemsg.go
│ ├── febindmsg.go
│ ├── fecancelmsg.go
│ ├── feclosemsg.go
│ ├── fedescribemsg.go
│ ├── feerrormsg.go
│ ├── feexecutemsg.go
│ ├── feflush.go
│ ├── feloadbalancemsg.go
│ ├── feloaddatamsg.go
│ ├── feloaddonemsg.go
│ ├── feloadfailmsg.go
│ ├── feparsemsg.go
│ ├── fepasswordmsg.go
│ ├── fequerymsg.go
│ ├── fesslmsg.go
│ ├── festartupmsg.go
│ ├── fesyncmsg.go
│ ├── feterminatemsg.go
│ ├── feverifyloadfiles.go
│ ├── msg.go
│ └── msgbuffer.go
│ ├── parse
│ └── queryLex.go
│ ├── result.go
│ ├── rowcache
│ ├── file.go
│ └── memory.go
│ ├── rows.go
│ ├── stmt.go
│ └── tx.go
├── go.opentelemetry.io
└── otel
│ ├── LICENSE
│ ├── attribute
│ ├── README.md
│ ├── doc.go
│ ├── encoder.go
│ ├── filter.go
│ ├── iterator.go
│ ├── key.go
│ ├── kv.go
│ ├── set.go
│ ├── type_string.go
│ └── value.go
│ ├── codes
│ ├── README.md
│ ├── codes.go
│ └── doc.go
│ ├── internal
│ ├── attribute
│ │ └── attribute.go
│ ├── gen.go
│ └── rawhelpers.go
│ └── trace
│ ├── LICENSE
│ ├── README.md
│ ├── config.go
│ ├── context.go
│ ├── doc.go
│ ├── embedded
│ ├── README.md
│ └── embedded.go
│ ├── nonrecording.go
│ ├── noop.go
│ ├── trace.go
│ └── tracestate.go
├── go.uber.org
├── multierr
│ ├── .codecov.yml
│ ├── .gitignore
│ ├── CHANGELOG.md
│ ├── LICENSE.txt
│ ├── Makefile
│ ├── README.md
│ ├── error.go
│ ├── error_post_go120.go
│ └── error_pre_go120.go
└── zap
│ ├── .codecov.yml
│ ├── .gitignore
│ ├── .golangci.yml
│ ├── .readme.tmpl
│ ├── CHANGELOG.md
│ ├── CODE_OF_CONDUCT.md
│ ├── CONTRIBUTING.md
│ ├── FAQ.md
│ ├── LICENSE
│ ├── Makefile
│ ├── README.md
│ ├── array.go
│ ├── buffer
│ ├── buffer.go
│ └── pool.go
│ ├── checklicense.sh
│ ├── config.go
│ ├── doc.go
│ ├── encoder.go
│ ├── error.go
│ ├── field.go
│ ├── flag.go
│ ├── glide.yaml
│ ├── global.go
│ ├── http_handler.go
│ ├── internal
│ ├── bufferpool
│ │ └── bufferpool.go
│ ├── color
│ │ └── color.go
│ ├── exit
│ │ └── exit.go
│ ├── level_enabler.go
│ ├── pool
│ │ └── pool.go
│ └── stacktrace
│ │ └── stack.go
│ ├── level.go
│ ├── logger.go
│ ├── options.go
│ ├── sink.go
│ ├── sugar.go
│ ├── time.go
│ ├── writer.go
│ └── zapcore
│ ├── buffered_write_syncer.go
│ ├── clock.go
│ ├── console_encoder.go
│ ├── core.go
│ ├── doc.go
│ ├── encoder.go
│ ├── entry.go
│ ├── error.go
│ ├── field.go
│ ├── hook.go
│ ├── increase_level.go
│ ├── json_encoder.go
│ ├── lazy_with.go
│ ├── level.go
│ ├── level_strings.go
│ ├── marshaler.go
│ ├── memory_encoder.go
│ ├── reflected_encoder.go
│ ├── sampler.go
│ ├── tee.go
│ └── write_syncer.go
├── golang.org
└── x
│ ├── crypto
│ ├── LICENSE
│ ├── PATENTS
│ └── pbkdf2
│ │ └── pbkdf2.go
│ ├── sync
│ ├── LICENSE
│ ├── PATENTS
│ └── errgroup
│ │ ├── errgroup.go
│ │ ├── go120.go
│ │ └── pre_go120.go
│ ├── sys
│ ├── LICENSE
│ ├── PATENTS
│ ├── cpu
│ │ ├── asm_aix_ppc64.s
│ │ ├── byteorder.go
│ │ ├── cpu.go
│ │ ├── cpu_aix.go
│ │ ├── cpu_arm.go
│ │ ├── cpu_arm64.go
│ │ ├── cpu_arm64.s
│ │ ├── cpu_gc_arm64.go
│ │ ├── cpu_gc_s390x.go
│ │ ├── cpu_gc_x86.go
│ │ ├── cpu_gccgo_arm64.go
│ │ ├── cpu_gccgo_s390x.go
│ │ ├── cpu_gccgo_x86.c
│ │ ├── cpu_gccgo_x86.go
│ │ ├── cpu_linux.go
│ │ ├── cpu_linux_arm.go
│ │ ├── cpu_linux_arm64.go
│ │ ├── cpu_linux_mips64x.go
│ │ ├── cpu_linux_noinit.go
│ │ ├── cpu_linux_ppc64x.go
│ │ ├── cpu_linux_s390x.go
│ │ ├── cpu_loong64.go
│ │ ├── cpu_mips64x.go
│ │ ├── cpu_mipsx.go
│ │ ├── cpu_netbsd_arm64.go
│ │ ├── cpu_openbsd_arm64.go
│ │ ├── cpu_openbsd_arm64.s
│ │ ├── cpu_other_arm.go
│ │ ├── cpu_other_arm64.go
│ │ ├── cpu_other_mips64x.go
│ │ ├── cpu_other_ppc64x.go
│ │ ├── cpu_other_riscv64.go
│ │ ├── cpu_ppc64x.go
│ │ ├── cpu_riscv64.go
│ │ ├── cpu_s390x.go
│ │ ├── cpu_s390x.s
│ │ ├── cpu_wasm.go
│ │ ├── cpu_x86.go
│ │ ├── cpu_x86.s
│ │ ├── cpu_zos.go
│ │ ├── cpu_zos_s390x.go
│ │ ├── endian_big.go
│ │ ├── endian_little.go
│ │ ├── hwcap_linux.go
│ │ ├── parse.go
│ │ ├── proc_cpuinfo_linux.go
│ │ ├── runtime_auxv.go
│ │ ├── runtime_auxv_go121.go
│ │ ├── syscall_aix_gccgo.go
│ │ └── syscall_aix_ppc64_gc.go
│ ├── unix
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── affinity_linux.go
│ │ ├── aliases.go
│ │ ├── asm_aix_ppc64.s
│ │ ├── asm_bsd_386.s
│ │ ├── asm_bsd_amd64.s
│ │ ├── asm_bsd_arm.s
│ │ ├── asm_bsd_arm64.s
│ │ ├── asm_bsd_ppc64.s
│ │ ├── asm_bsd_riscv64.s
│ │ ├── asm_linux_386.s
│ │ ├── asm_linux_amd64.s
│ │ ├── asm_linux_arm.s
│ │ ├── asm_linux_arm64.s
│ │ ├── asm_linux_loong64.s
│ │ ├── asm_linux_mips64x.s
│ │ ├── asm_linux_mipsx.s
│ │ ├── asm_linux_ppc64x.s
│ │ ├── asm_linux_riscv64.s
│ │ ├── asm_linux_s390x.s
│ │ ├── asm_openbsd_mips64.s
│ │ ├── asm_solaris_amd64.s
│ │ ├── asm_zos_s390x.s
│ │ ├── bluetooth_linux.go
│ │ ├── bpxsvc_zos.go
│ │ ├── bpxsvc_zos.s
│ │ ├── cap_freebsd.go
│ │ ├── constants.go
│ │ ├── dev_aix_ppc.go
│ │ ├── dev_aix_ppc64.go
│ │ ├── dev_darwin.go
│ │ ├── dev_dragonfly.go
│ │ ├── dev_freebsd.go
│ │ ├── dev_linux.go
│ │ ├── dev_netbsd.go
│ │ ├── dev_openbsd.go
│ │ ├── dev_zos.go
│ │ ├── dirent.go
│ │ ├── endian_big.go
│ │ ├── endian_little.go
│ │ ├── env_unix.go
│ │ ├── fcntl.go
│ │ ├── fcntl_darwin.go
│ │ ├── fcntl_linux_32bit.go
│ │ ├── fdset.go
│ │ ├── gccgo.go
│ │ ├── gccgo_c.c
│ │ ├── gccgo_linux_amd64.go
│ │ ├── ifreq_linux.go
│ │ ├── ioctl_linux.go
│ │ ├── ioctl_signed.go
│ │ ├── ioctl_unsigned.go
│ │ ├── ioctl_zos.go
│ │ ├── mkall.sh
│ │ ├── mkerrors.sh
│ │ ├── mmap_nomremap.go
│ │ ├── mremap.go
│ │ ├── pagesize_unix.go
│ │ ├── pledge_openbsd.go
│ │ ├── ptrace_darwin.go
│ │ ├── ptrace_ios.go
│ │ ├── race.go
│ │ ├── race0.go
│ │ ├── readdirent_getdents.go
│ │ ├── readdirent_getdirentries.go
│ │ ├── sockcmsg_dragonfly.go
│ │ ├── sockcmsg_linux.go
│ │ ├── sockcmsg_unix.go
│ │ ├── sockcmsg_unix_other.go
│ │ ├── sockcmsg_zos.go
│ │ ├── symaddr_zos_s390x.s
│ │ ├── syscall.go
│ │ ├── syscall_aix.go
│ │ ├── syscall_aix_ppc.go
│ │ ├── syscall_aix_ppc64.go
│ │ ├── syscall_bsd.go
│ │ ├── syscall_darwin.go
│ │ ├── syscall_darwin_amd64.go
│ │ ├── syscall_darwin_arm64.go
│ │ ├── syscall_darwin_libSystem.go
│ │ ├── syscall_dragonfly.go
│ │ ├── syscall_dragonfly_amd64.go
│ │ ├── syscall_freebsd.go
│ │ ├── syscall_freebsd_386.go
│ │ ├── syscall_freebsd_amd64.go
│ │ ├── syscall_freebsd_arm.go
│ │ ├── syscall_freebsd_arm64.go
│ │ ├── syscall_freebsd_riscv64.go
│ │ ├── syscall_hurd.go
│ │ ├── syscall_hurd_386.go
│ │ ├── syscall_illumos.go
│ │ ├── syscall_linux.go
│ │ ├── syscall_linux_386.go
│ │ ├── syscall_linux_alarm.go
│ │ ├── syscall_linux_amd64.go
│ │ ├── syscall_linux_amd64_gc.go
│ │ ├── syscall_linux_arm.go
│ │ ├── syscall_linux_arm64.go
│ │ ├── syscall_linux_gc.go
│ │ ├── syscall_linux_gc_386.go
│ │ ├── syscall_linux_gc_arm.go
│ │ ├── syscall_linux_gccgo_386.go
│ │ ├── syscall_linux_gccgo_arm.go
│ │ ├── syscall_linux_loong64.go
│ │ ├── syscall_linux_mips64x.go
│ │ ├── syscall_linux_mipsx.go
│ │ ├── syscall_linux_ppc.go
│ │ ├── syscall_linux_ppc64x.go
│ │ ├── syscall_linux_riscv64.go
│ │ ├── syscall_linux_s390x.go
│ │ ├── syscall_linux_sparc64.go
│ │ ├── syscall_netbsd.go
│ │ ├── syscall_netbsd_386.go
│ │ ├── syscall_netbsd_amd64.go
│ │ ├── syscall_netbsd_arm.go
│ │ ├── syscall_netbsd_arm64.go
│ │ ├── syscall_openbsd.go
│ │ ├── syscall_openbsd_386.go
│ │ ├── syscall_openbsd_amd64.go
│ │ ├── syscall_openbsd_arm.go
│ │ ├── syscall_openbsd_arm64.go
│ │ ├── syscall_openbsd_libc.go
│ │ ├── syscall_openbsd_mips64.go
│ │ ├── syscall_openbsd_ppc64.go
│ │ ├── syscall_openbsd_riscv64.go
│ │ ├── syscall_solaris.go
│ │ ├── syscall_solaris_amd64.go
│ │ ├── syscall_unix.go
│ │ ├── syscall_unix_gc.go
│ │ ├── syscall_unix_gc_ppc64x.go
│ │ ├── syscall_zos_s390x.go
│ │ ├── sysvshm_linux.go
│ │ ├── sysvshm_unix.go
│ │ ├── sysvshm_unix_other.go
│ │ ├── timestruct.go
│ │ ├── unveil_openbsd.go
│ │ ├── xattr_bsd.go
│ │ ├── zerrors_aix_ppc.go
│ │ ├── zerrors_aix_ppc64.go
│ │ ├── zerrors_darwin_amd64.go
│ │ ├── zerrors_darwin_arm64.go
│ │ ├── zerrors_dragonfly_amd64.go
│ │ ├── zerrors_freebsd_386.go
│ │ ├── zerrors_freebsd_amd64.go
│ │ ├── zerrors_freebsd_arm.go
│ │ ├── zerrors_freebsd_arm64.go
│ │ ├── zerrors_freebsd_riscv64.go
│ │ ├── zerrors_linux.go
│ │ ├── zerrors_linux_386.go
│ │ ├── zerrors_linux_amd64.go
│ │ ├── zerrors_linux_arm.go
│ │ ├── zerrors_linux_arm64.go
│ │ ├── zerrors_linux_loong64.go
│ │ ├── zerrors_linux_mips.go
│ │ ├── zerrors_linux_mips64.go
│ │ ├── zerrors_linux_mips64le.go
│ │ ├── zerrors_linux_mipsle.go
│ │ ├── zerrors_linux_ppc.go
│ │ ├── zerrors_linux_ppc64.go
│ │ ├── zerrors_linux_ppc64le.go
│ │ ├── zerrors_linux_riscv64.go
│ │ ├── zerrors_linux_s390x.go
│ │ ├── zerrors_linux_sparc64.go
│ │ ├── zerrors_netbsd_386.go
│ │ ├── zerrors_netbsd_amd64.go
│ │ ├── zerrors_netbsd_arm.go
│ │ ├── zerrors_netbsd_arm64.go
│ │ ├── zerrors_openbsd_386.go
│ │ ├── zerrors_openbsd_amd64.go
│ │ ├── zerrors_openbsd_arm.go
│ │ ├── zerrors_openbsd_arm64.go
│ │ ├── zerrors_openbsd_mips64.go
│ │ ├── zerrors_openbsd_ppc64.go
│ │ ├── zerrors_openbsd_riscv64.go
│ │ ├── zerrors_solaris_amd64.go
│ │ ├── zerrors_zos_s390x.go
│ │ ├── zptrace_armnn_linux.go
│ │ ├── zptrace_linux_arm64.go
│ │ ├── zptrace_mipsnn_linux.go
│ │ ├── zptrace_mipsnnle_linux.go
│ │ ├── zptrace_x86_linux.go
│ │ ├── zsymaddr_zos_s390x.s
│ │ ├── zsyscall_aix_ppc.go
│ │ ├── zsyscall_aix_ppc64.go
│ │ ├── zsyscall_aix_ppc64_gc.go
│ │ ├── zsyscall_aix_ppc64_gccgo.go
│ │ ├── zsyscall_darwin_amd64.go
│ │ ├── zsyscall_darwin_amd64.s
│ │ ├── zsyscall_darwin_arm64.go
│ │ ├── zsyscall_darwin_arm64.s
│ │ ├── zsyscall_dragonfly_amd64.go
│ │ ├── zsyscall_freebsd_386.go
│ │ ├── zsyscall_freebsd_amd64.go
│ │ ├── zsyscall_freebsd_arm.go
│ │ ├── zsyscall_freebsd_arm64.go
│ │ ├── zsyscall_freebsd_riscv64.go
│ │ ├── zsyscall_illumos_amd64.go
│ │ ├── zsyscall_linux.go
│ │ ├── zsyscall_linux_386.go
│ │ ├── zsyscall_linux_amd64.go
│ │ ├── zsyscall_linux_arm.go
│ │ ├── zsyscall_linux_arm64.go
│ │ ├── zsyscall_linux_loong64.go
│ │ ├── zsyscall_linux_mips.go
│ │ ├── zsyscall_linux_mips64.go
│ │ ├── zsyscall_linux_mips64le.go
│ │ ├── zsyscall_linux_mipsle.go
│ │ ├── zsyscall_linux_ppc.go
│ │ ├── zsyscall_linux_ppc64.go
│ │ ├── zsyscall_linux_ppc64le.go
│ │ ├── zsyscall_linux_riscv64.go
│ │ ├── zsyscall_linux_s390x.go
│ │ ├── zsyscall_linux_sparc64.go
│ │ ├── zsyscall_netbsd_386.go
│ │ ├── zsyscall_netbsd_amd64.go
│ │ ├── zsyscall_netbsd_arm.go
│ │ ├── zsyscall_netbsd_arm64.go
│ │ ├── zsyscall_openbsd_386.go
│ │ ├── zsyscall_openbsd_386.s
│ │ ├── zsyscall_openbsd_amd64.go
│ │ ├── zsyscall_openbsd_amd64.s
│ │ ├── zsyscall_openbsd_arm.go
│ │ ├── zsyscall_openbsd_arm.s
│ │ ├── zsyscall_openbsd_arm64.go
│ │ ├── zsyscall_openbsd_arm64.s
│ │ ├── zsyscall_openbsd_mips64.go
│ │ ├── zsyscall_openbsd_mips64.s
│ │ ├── zsyscall_openbsd_ppc64.go
│ │ ├── zsyscall_openbsd_ppc64.s
│ │ ├── zsyscall_openbsd_riscv64.go
│ │ ├── zsyscall_openbsd_riscv64.s
│ │ ├── zsyscall_solaris_amd64.go
│ │ ├── zsyscall_zos_s390x.go
│ │ ├── zsysctl_openbsd_386.go
│ │ ├── zsysctl_openbsd_amd64.go
│ │ ├── zsysctl_openbsd_arm.go
│ │ ├── zsysctl_openbsd_arm64.go
│ │ ├── zsysctl_openbsd_mips64.go
│ │ ├── zsysctl_openbsd_ppc64.go
│ │ ├── zsysctl_openbsd_riscv64.go
│ │ ├── zsysnum_darwin_amd64.go
│ │ ├── zsysnum_darwin_arm64.go
│ │ ├── zsysnum_dragonfly_amd64.go
│ │ ├── zsysnum_freebsd_386.go
│ │ ├── zsysnum_freebsd_amd64.go
│ │ ├── zsysnum_freebsd_arm.go
│ │ ├── zsysnum_freebsd_arm64.go
│ │ ├── zsysnum_freebsd_riscv64.go
│ │ ├── zsysnum_linux_386.go
│ │ ├── zsysnum_linux_amd64.go
│ │ ├── zsysnum_linux_arm.go
│ │ ├── zsysnum_linux_arm64.go
│ │ ├── zsysnum_linux_loong64.go
│ │ ├── zsysnum_linux_mips.go
│ │ ├── zsysnum_linux_mips64.go
│ │ ├── zsysnum_linux_mips64le.go
│ │ ├── zsysnum_linux_mipsle.go
│ │ ├── zsysnum_linux_ppc.go
│ │ ├── zsysnum_linux_ppc64.go
│ │ ├── zsysnum_linux_ppc64le.go
│ │ ├── zsysnum_linux_riscv64.go
│ │ ├── zsysnum_linux_s390x.go
│ │ ├── zsysnum_linux_sparc64.go
│ │ ├── zsysnum_netbsd_386.go
│ │ ├── zsysnum_netbsd_amd64.go
│ │ ├── zsysnum_netbsd_arm.go
│ │ ├── zsysnum_netbsd_arm64.go
│ │ ├── zsysnum_openbsd_386.go
│ │ ├── zsysnum_openbsd_amd64.go
│ │ ├── zsysnum_openbsd_arm.go
│ │ ├── zsysnum_openbsd_arm64.go
│ │ ├── zsysnum_openbsd_mips64.go
│ │ ├── zsysnum_openbsd_ppc64.go
│ │ ├── zsysnum_openbsd_riscv64.go
│ │ ├── zsysnum_zos_s390x.go
│ │ ├── ztypes_aix_ppc.go
│ │ ├── ztypes_aix_ppc64.go
│ │ ├── ztypes_darwin_amd64.go
│ │ ├── ztypes_darwin_arm64.go
│ │ ├── ztypes_dragonfly_amd64.go
│ │ ├── ztypes_freebsd_386.go
│ │ ├── ztypes_freebsd_amd64.go
│ │ ├── ztypes_freebsd_arm.go
│ │ ├── ztypes_freebsd_arm64.go
│ │ ├── ztypes_freebsd_riscv64.go
│ │ ├── ztypes_linux.go
│ │ ├── ztypes_linux_386.go
│ │ ├── ztypes_linux_amd64.go
│ │ ├── ztypes_linux_arm.go
│ │ ├── ztypes_linux_arm64.go
│ │ ├── ztypes_linux_loong64.go
│ │ ├── ztypes_linux_mips.go
│ │ ├── ztypes_linux_mips64.go
│ │ ├── ztypes_linux_mips64le.go
│ │ ├── ztypes_linux_mipsle.go
│ │ ├── ztypes_linux_ppc.go
│ │ ├── ztypes_linux_ppc64.go
│ │ ├── ztypes_linux_ppc64le.go
│ │ ├── ztypes_linux_riscv64.go
│ │ ├── ztypes_linux_s390x.go
│ │ ├── ztypes_linux_sparc64.go
│ │ ├── ztypes_netbsd_386.go
│ │ ├── ztypes_netbsd_amd64.go
│ │ ├── ztypes_netbsd_arm.go
│ │ ├── ztypes_netbsd_arm64.go
│ │ ├── ztypes_openbsd_386.go
│ │ ├── ztypes_openbsd_amd64.go
│ │ ├── ztypes_openbsd_arm.go
│ │ ├── ztypes_openbsd_arm64.go
│ │ ├── ztypes_openbsd_mips64.go
│ │ ├── ztypes_openbsd_ppc64.go
│ │ ├── ztypes_openbsd_riscv64.go
│ │ ├── ztypes_solaris_amd64.go
│ │ └── ztypes_zos_s390x.go
│ └── windows
│ │ ├── aliases.go
│ │ ├── dll_windows.go
│ │ ├── env_windows.go
│ │ ├── eventlog.go
│ │ ├── exec_windows.go
│ │ ├── memory_windows.go
│ │ ├── mkerrors.bash
│ │ ├── mkknownfolderids.bash
│ │ ├── mksyscall.go
│ │ ├── race.go
│ │ ├── race0.go
│ │ ├── registry
│ │ ├── key.go
│ │ ├── mksyscall.go
│ │ ├── syscall.go
│ │ ├── value.go
│ │ └── zsyscall_windows.go
│ │ ├── security_windows.go
│ │ ├── service.go
│ │ ├── setupapi_windows.go
│ │ ├── str.go
│ │ ├── syscall.go
│ │ ├── syscall_windows.go
│ │ ├── types_windows.go
│ │ ├── types_windows_386.go
│ │ ├── types_windows_amd64.go
│ │ ├── types_windows_arm.go
│ │ ├── types_windows_arm64.go
│ │ ├── zerrors_windows.go
│ │ ├── zknownfolderids_windows.go
│ │ └── zsyscall_windows.go
│ └── text
│ ├── LICENSE
│ ├── PATENTS
│ ├── transform
│ └── transform.go
│ └── unicode
│ └── norm
│ ├── composition.go
│ ├── forminfo.go
│ ├── input.go
│ ├── iter.go
│ ├── normalize.go
│ ├── readwriter.go
│ ├── tables10.0.0.go
│ ├── tables11.0.0.go
│ ├── tables12.0.0.go
│ ├── tables13.0.0.go
│ ├── tables15.0.0.go
│ ├── tables9.0.0.go
│ ├── transform.go
│ └── trie.go
├── gopkg.in
├── yaml.v2
│ ├── .travis.yml
│ ├── LICENSE
│ ├── LICENSE.libyaml
│ ├── NOTICE
│ ├── README.md
│ ├── apic.go
│ ├── decode.go
│ ├── emitterc.go
│ ├── encode.go
│ ├── parserc.go
│ ├── readerc.go
│ ├── resolve.go
│ ├── scannerc.go
│ ├── sorter.go
│ ├── writerc.go
│ ├── yaml.go
│ ├── yamlh.go
│ └── yamlprivateh.go
└── yaml.v3
│ ├── LICENSE
│ ├── NOTICE
│ ├── README.md
│ ├── apic.go
│ ├── decode.go
│ ├── emitterc.go
│ ├── encode.go
│ ├── parserc.go
│ ├── readerc.go
│ ├── resolve.go
│ ├── scannerc.go
│ ├── sorter.go
│ ├── writerc.go
│ ├── yaml.go
│ ├── yamlh.go
│ └── yamlprivateh.go
├── howett.net
└── plist
│ ├── .gitignore
│ ├── .gitlab-ci.yml
│ ├── LICENSE
│ ├── README.md
│ ├── bplist.go
│ ├── bplist_generator.go
│ ├── bplist_parser.go
│ ├── decode.go
│ ├── doc.go
│ ├── encode.go
│ ├── fuzz.go
│ ├── marshal.go
│ ├── must.go
│ ├── plist.go
│ ├── plist_types.go
│ ├── text_generator.go
│ ├── text_parser.go
│ ├── text_tables.go
│ ├── typeinfo.go
│ ├── unmarshal.go
│ ├── util.go
│ ├── xml_generator.go
│ ├── xml_parser.go
│ ├── zerocopy.go
│ └── zerocopy_appengine.go
├── mellium.im
└── sasl
│ ├── .gitignore
│ ├── CHANGELOG.md
│ ├── DCO
│ ├── LICENSE
│ ├── README.md
│ ├── doc.go
│ ├── mechanism.go
│ ├── negotiator.go
│ ├── nonce.go
│ ├── options.go
│ ├── plain.go
│ ├── scram.go
│ ├── xor.go
│ ├── xor_amd64.go
│ ├── xor_amd64.s
│ ├── xor_arm64.go
│ ├── xor_arm64.s
│ ├── xor_generic.go
│ ├── xor_go.go
│ ├── xor_ppc64x.go
│ └── xor_ppc64x.s
└── modules.txt
/.github/workflows/ci.yml:
--------------------------------------------------------------------------------
1 | name: pull requests tests
2 |
3 | on:
4 | push:
5 | branches:
6 | - master
7 | pull_request:
8 |
9 | jobs:
10 | ci:
11 | runs-on: ubuntu-latest
12 |
13 | steps:
14 | - uses: docker-practice/actions-setup-docker@master
15 | timeout-minutes: 12
16 |
17 | - name: Checkout code
18 | uses: actions/checkout@v3
19 |
20 | - name: Install Go
21 | uses: actions/setup-go@v3
22 | with:
23 | go-version: 1.23
24 | check-latest: true
25 | cache: true
26 |
27 | - name: Up databases
28 | run: make db_up
29 |
30 | - name: Run tests
31 | run: go test -v ./tests/...
32 |
--------------------------------------------------------------------------------
/.github/workflows/dist.yml:
--------------------------------------------------------------------------------
1 | name: goreleaser
2 |
3 | on:
4 | push:
5 | tags:
6 | - "*"
7 |
8 | jobs:
9 | goreleaser:
10 | runs-on: ubuntu-latest
11 | steps:
12 | - name: Checkout
13 | uses: actions/checkout@v3
14 | with:
15 | fetch-depth: 0
16 | - name: Set up Go
17 | uses: actions/setup-go@v3
18 | with:
19 | go-version: 1.23
20 |
21 | - name: Run GoReleaser
22 | uses: goreleaser/goreleaser-action@v4
23 | with:
24 | distribution: goreleaser
25 | version: latest
26 | args: release
27 | env:
28 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
29 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /bin
2 | /migrations
3 | /seeds
4 | /tests/migrations/tmp
5 |
--------------------------------------------------------------------------------
/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM golang:1.23.0-alpine3.20 AS build
2 | RUN apk add make tzdata
3 | COPY . /go/src/miga
4 | WORKDIR /go/src/miga
5 | RUN make build
6 |
7 | FROM scratch
8 | COPY --from=build /usr/share/zoneinfo /usr/share/zoneinfo
9 | COPY --from=build /go/src/miga/bin/miga /miga
10 | ENTRYPOINT [ "/miga" ]
11 |
--------------------------------------------------------------------------------
/commands/create.go:
--------------------------------------------------------------------------------
1 | package commands
2 |
3 | import (
4 | "miga/driver"
5 | "miga/logger"
6 |
7 | "github.com/spf13/cobra"
8 | )
9 |
10 | // Create migrations files with given name and extension
11 | func Create(driver func() driver.Interface) *cobra.Command {
12 | return &cobra.Command{
13 | Use: "create",
14 | Short: "create migration file",
15 | Run: func(cmd *cobra.Command, args []string) {
16 | if len(args) < 1 || len(args[0]) == 0 {
17 | logger.G().Fatalf("File name required")
18 | }
19 | name := args[0]
20 |
21 | ext := "sql"
22 | if len(args) == 2 {
23 | ext = args[1]
24 | }
25 |
26 | if err := driver().Create(name, ext); err != nil {
27 | logger.G().Fatalf("create: %s", err)
28 | }
29 | },
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/commands/redo.go:
--------------------------------------------------------------------------------
1 | package commands
2 |
3 | import (
4 | "miga/driver"
5 | "miga/logger"
6 |
7 | "github.com/spf13/cobra"
8 | )
9 |
10 | // Redo rollback and rerun last migration
11 | func Redo(driver func() driver.Interface) *cobra.Command {
12 | return &cobra.Command{
13 | Use: "redo",
14 | Short: "redo cmd",
15 | Run: func(cmd *cobra.Command, args []string) {
16 | if err := driver().Redo(); err != nil {
17 | logger.G().Fatalf("redo: %s", err)
18 | }
19 | },
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/commands/status.go:
--------------------------------------------------------------------------------
1 | package commands
2 |
3 | import (
4 | "miga/driver"
5 | "miga/logger"
6 |
7 | "github.com/spf13/cobra"
8 | )
9 |
10 | // Status print current migrations state
11 | func Status(driver func() driver.Interface) *cobra.Command {
12 | return &cobra.Command{
13 | Use: "status",
14 | Short: "returns current db status",
15 | Run: func(cmd *cobra.Command, args []string) {
16 | if err := driver().Status(); err != nil {
17 | logger.G().Fatalf("status: %s", err)
18 | }
19 | },
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/commands/version.go:
--------------------------------------------------------------------------------
1 | package commands
2 |
3 | import (
4 | "miga/driver"
5 | "miga/logger"
6 |
7 | "github.com/spf13/cobra"
8 | )
9 |
10 | // Version print current db version
11 | func Version(driver func() driver.Interface) *cobra.Command {
12 | return &cobra.Command{
13 | Use: "version",
14 | Short: "get current db version",
15 | Run: func(cmd *cobra.Command, args []string) {
16 | if err := driver().Version(); err != nil {
17 | logger.G().Fatalf("get version: %s", err)
18 | }
19 | },
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/miga.yml:
--------------------------------------------------------------------------------
1 | miga:
2 | driver: goose
3 | path: ./tests/migrations/goose
4 | table: db_version
5 |
6 | logger:
7 | level: info
8 | format: console
9 |
10 | db:
11 | dialect: mysql
12 | dsn: "user:password@tcp(127.0.0.1:3306)/miga"
13 |
--------------------------------------------------------------------------------
/tests/clickhouse/macros.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | chapsuk
4 | 0
5 | miga
6 | 0
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/tests/clickhouse/remote_servers.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | true
6 |
7 | clickhouse0
8 | 9000
9 |
10 |
11 | clickhouse1
12 | 9000
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/tests/clickhouse/zookeeper.xml:
--------------------------------------------------------------------------------
1 |
2 | /clickhouse/{installation}/{cluster}/tables/{shard}/{database}/{table}
3 | {replica}
4 |
5 |
6 |
7 | zookeeper
8 | 2181
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/tests/config_test.go:
--------------------------------------------------------------------------------
1 | package tests
2 |
3 | import (
4 | "testing"
5 |
6 | "miga/config"
7 |
8 | . "github.com/smartystreets/goconvey/convey"
9 | )
10 |
11 | func TestConfig(t *testing.T) {
12 | Convey("Initialized config", t, func() {
13 | cfg, err := config.NewConfig("./../miga.yml")
14 | So(err, ShouldBeNil)
15 |
16 | Convey("Should parse miga config", func() {
17 | So(cfg.Miga.Driver, ShouldEqual, "goose")
18 | So(cfg.Miga.Path, ShouldEqual, "./tests/migrations/goose")
19 | So(cfg.Miga.TableName, ShouldEqual, "db_version")
20 | })
21 |
22 | Convey("Should parse logger", func() {
23 | So(cfg.Logger.Level, ShouldEqual, "info")
24 | So(cfg.Logger.Format, ShouldEqual, "console")
25 | })
26 |
27 | Convey("Should parse db block", func() {
28 | So(cfg.Database.DSN, ShouldNotBeEmpty)
29 | So(cfg.Database.Dialect, ShouldEqual, "mysql")
30 | })
31 | })
32 | }
33 |
--------------------------------------------------------------------------------
/tests/logger_test.go:
--------------------------------------------------------------------------------
1 | package tests
2 |
3 | import (
4 | "miga/logger"
5 | "testing"
6 |
7 | . "github.com/smartystreets/goconvey/convey"
8 | )
9 |
10 | func TestLoggerInit(t *testing.T) {
11 | Convey("Should init logger with console and json formats without errors", t, func() {
12 | err := logger.Init("miga", "v0.0.1", "info", "console")
13 | So(err, ShouldBeNil)
14 |
15 | err = logger.Init("miga", "v0.0.1", "info", "json")
16 | So(err, ShouldBeNil)
17 | })
18 | }
19 |
--------------------------------------------------------------------------------
/tests/migrations/goose/00001_users.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | CREATE TABLE users (
3 | id INT PRIMARY KEY,
4 | name VARCHAR(128),
5 | migastas INT NOT NULL DEFAULT 0
6 | );
7 |
8 | -- +goose Down
9 | DROP TABLE IF EXISTS users;
--------------------------------------------------------------------------------
/tests/migrations/goose/00002_wallets.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | CREATE TABLE wallets (
3 | id INT PRIMARY KEY,
4 | user_id int
5 | );
6 |
7 | -- +goose Down
8 | DROP TABLE IF EXISTS wallets;
--------------------------------------------------------------------------------
/tests/migrations/goose/00003_add_users_email.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | ALTER TABLE users ADD COLUMN email VARCHAR(128);
3 |
4 | -- +goose Down
5 | ALTER TABLE users DROP COLUMN email;
6 |
7 |
--------------------------------------------------------------------------------
/tests/migrations/goose/00004_text.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | INSERT INTO users (id, name) VALUES (1, 'Abib;Rabib');
3 |
4 | -- +goose Down
5 | DELETE FROM users WHERE id = 1;
--------------------------------------------------------------------------------
/tests/migrations/goose/00006_goose_issue158.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 |
3 | -- +goose StatementBegin
4 | DO $$
5 | BEGIN
6 | IF NOT EXISTS (SELECT 1 FROM pg_type WHERE typname = 'things') THEN
7 | create type things AS ENUM ('hello', 'world');
8 | END IF;
9 | END
10 | $$;
11 | -- +goose StatementEnd
12 |
13 | CREATE TABLE IF NOT EXISTS doge (
14 | id int,
15 | th things
16 | );
17 | -- +goose Down
18 | -- SQL in this section is executed when the migration is rolled back.
19 | DROP TABLE IF EXISTS doge;
20 |
--------------------------------------------------------------------------------
/tests/migrations/goose/00101_wrong.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | ALTER TABLE users ADD COLUMN email VARCHAR;
3 |
4 | -- +goose Down
5 | ALTER TABLE users DROP COLUMN IF EXISTS email;
6 |
7 |
--------------------------------------------------------------------------------
/tests/migrations/goose/00102_never.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | CREATE TABLE never (
3 | id INT PRIMARY KEY
4 | );
5 |
6 | -- +goose Down
7 | DROP TABLE IF EXISTS never;
--------------------------------------------------------------------------------
/tests/migrations/goose_clickhouse/00001_users.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | CREATE TABLE users (
3 | id BIGINT,
4 | name VARCHAR(128),
5 | migastas BIGINT DEFAULT 0
6 | ) engine=MergeTree() order by id;
7 |
8 | -- +goose Down
9 | DROP TABLE IF EXISTS users;
10 |
--------------------------------------------------------------------------------
/tests/migrations/goose_clickhouse/00002_wallets.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | CREATE TABLE wallets (
3 | id BIGINT,
4 | user_id BIGINT
5 | ) engine=MergeTree() order by id;
6 |
7 | -- +goose Down
8 | DROP TABLE IF EXISTS wallets;
--------------------------------------------------------------------------------
/tests/migrations/goose_clickhouse/00003_add_users_email.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | ALTER TABLE users ADD COLUMN email VARCHAR(128);
3 |
4 | -- +goose Down
5 | ALTER TABLE users DROP COLUMN email;
6 |
--------------------------------------------------------------------------------
/tests/migrations/goose_clickhouse/00101_wrong.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | ALTER TABLE users ADD COLUMN email VARCHAR;
3 |
4 | -- +goose Down
5 | ALTER TABLE users DROP COLUMN IF EXISTS email;
6 |
--------------------------------------------------------------------------------
/tests/migrations/goose_clickhouse/00102_never.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | CREATE TABLE never (
3 | id INT
4 | ) engine=Memory;
5 |
6 | -- +goose Down
7 | DROP TABLE IF EXISTS never;
8 |
--------------------------------------------------------------------------------
/tests/migrations/goose_clickhouse_replicated/00001_users.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | CREATE TABLE users_replicated ON CLUSTER '{cluster}' (
3 | id BIGINT,
4 | name VARCHAR(128),
5 | migastas BIGINT DEFAULT 0
6 | ) engine=ReplicatedMergeTree() order by id;
7 |
8 | -- +goose Down
9 | DROP TABLE IF EXISTS users_replicated ON CLUSTER '{cluster}' SYNC;
10 |
--------------------------------------------------------------------------------
/tests/migrations/goose_clickhouse_replicated/00002_wallets.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | CREATE TABLE wallets_replicated ON CLUSTER '{cluster}' (
3 | id BIGINT,
4 | user_id BIGINT
5 | ) engine=ReplicatedMergeTree() order by id;
6 |
7 | -- +goose Down
8 | DROP TABLE IF EXISTS wallets_replicated ON CLUSTER '{cluster}' SYNC;
9 |
--------------------------------------------------------------------------------
/tests/migrations/goose_clickhouse_replicated/00003_add_users_email.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | SET replication_alter_partitions_sync = 2;
3 | ALTER TABLE users_replicated ON CLUSTER '{cluster}' ADD COLUMN email VARCHAR(128);
4 |
5 | -- +goose Down
6 | SET replication_alter_partitions_sync = 2;
7 | ALTER TABLE users_replicated ON CLUSTER '{cluster}' DROP COLUMN email;
8 |
--------------------------------------------------------------------------------
/tests/migrations/goose_clickhouse_replicated/00101_wrong.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | SET replication_alter_partitions_sync = 2;
3 | ALTER TABLE users_replicated ON CLUSTER '{cluster}' ADD COLUMN email VARCHAR;
4 |
5 | -- +goose Down
6 | SET replication_alter_partitions_sync = 2;
7 | ALTER TABLE users_replicated ON CLUSTER '{cluster}' DROP COLUMN IF EXISTS email;
8 |
--------------------------------------------------------------------------------
/tests/migrations/goose_clickhouse_replicated/00102_never.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | CREATE TABLE never_replicated ON CLUSTER '{cluster}' (
3 | id INT
4 | ) engine=Memory;
5 |
6 | -- +goose Down
7 | DROP TABLE IF EXISTS never_replicated ON CLUSTER '{cluster}';
8 |
--------------------------------------------------------------------------------
/tests/migrations/goose_starrocks/00001_users.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | CREATE TABLE IF NOT EXISTS users (
3 | id BIGINT,
4 | name STRING,
5 | migastas BIGINT DEFAULT "0"
6 | )
7 | PRIMARY KEY (id)
8 | DISTRIBUTED BY HASH (id)
9 | ORDER BY (id);
10 |
11 | -- +goose Down
12 | DROP TABLE IF EXISTS users;
13 |
--------------------------------------------------------------------------------
/tests/migrations/goose_starrocks/00002_wallets.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | CREATE TABLE IF NOT EXISTS wallets (
3 | id BIGINT,
4 | user_id BIGINT
5 | )
6 | PRIMARY KEY (id)
7 | DISTRIBUTED BY HASH (id);
8 |
9 | -- +goose Down
10 | DROP TABLE IF EXISTS wallets;
11 |
--------------------------------------------------------------------------------
/tests/migrations/goose_starrocks/00003_add_users_email.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | ALTER TABLE users ADD COLUMN email STRING;
3 |
4 | -- +goose Down
5 | ALTER TABLE users DROP COLUMN email;
6 |
--------------------------------------------------------------------------------
/tests/migrations/goose_starrocks/00004_text.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | INSERT INTO users (id, name) VALUES (1, 'Abib;Rabib');
3 |
4 | -- +goose Down
5 | DELETE FROM users WHERE id = 1;
6 |
--------------------------------------------------------------------------------
/tests/migrations/goose_starrocks/00101_wrong.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | ALTER TABLE users ADD COLUMN email VARCHAR;
3 |
4 | -- +goose Down
5 | ALTER TABLE users DROP COLUMN IF EXISTS email;
6 |
--------------------------------------------------------------------------------
/tests/migrations/goose_starrocks/00102_never.sql:
--------------------------------------------------------------------------------
1 | -- +goose Up
2 | CREATE TABLE never (
3 | id INT
4 | ) engine=Memory;
5 |
6 | -- +goose Down
7 | DROP TABLE IF EXISTS never;
8 |
--------------------------------------------------------------------------------
/tests/migrations/impg/101_wrong.down.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE foo (id int);
2 | ALTER TABLE users DROP COLUMN IF EXISTS email;
3 |
--------------------------------------------------------------------------------
/tests/migrations/impg/101_wrong.up.sql:
--------------------------------------------------------------------------------
1 | ALTER TABLE users ADD COLUMN email VARCHAR;
2 | DROP TABLE foo;
--------------------------------------------------------------------------------
/tests/migrations/impg/102_never.down.sql:
--------------------------------------------------------------------------------
1 | DROP TABLE IF EXISTS never;
2 |
--------------------------------------------------------------------------------
/tests/migrations/impg/102_never.up.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE never (
2 | id INT PRIMARY KEY
3 | );
4 |
--------------------------------------------------------------------------------
/tests/migrations/impg/1_users.down.sql:
--------------------------------------------------------------------------------
1 | DROP TABLE IF EXISTS users;
2 |
--------------------------------------------------------------------------------
/tests/migrations/impg/1_users.up.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE users (
2 | id INT PRIMARY KEY,
3 | name VARCHAR(128),
4 | migastas int not null default 0
5 | );
6 |
--------------------------------------------------------------------------------
/tests/migrations/impg/2_wallets.down.sql:
--------------------------------------------------------------------------------
1 | DROP TABLE IF EXISTS wallets;
2 |
--------------------------------------------------------------------------------
/tests/migrations/impg/2_wallets.up.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE wallets (
2 | id INT PRIMARY KEY,
3 | user_id int
4 | );
5 |
--------------------------------------------------------------------------------
/tests/migrations/impg/3_add_users_email.down.sql:
--------------------------------------------------------------------------------
1 | ALTER TABLE users DROP COLUMN email;
2 |
--------------------------------------------------------------------------------
/tests/migrations/impg/3_add_users_email.up.sql:
--------------------------------------------------------------------------------
1 | ALTER TABLE users ADD COLUMN email VARCHAR(128);
2 |
--------------------------------------------------------------------------------
/tests/migrations/impg/4_text.down.sql:
--------------------------------------------------------------------------------
1 | DELETE FROM users WHERE id = 1;
--------------------------------------------------------------------------------
/tests/migrations/impg/4_text.up.sql:
--------------------------------------------------------------------------------
1 | INSERT INTO users (id, name) VALUES (1, 'Abib;Rabib');
2 |
--------------------------------------------------------------------------------
/tests/migrations/impg/5_statement.down.sql:
--------------------------------------------------------------------------------
1 | DROP FUNCTION IF EXISTS histories_partition_creation( DATE, DATE );
2 | DROP TABLE IF EXISTS histories CASCADE;
--------------------------------------------------------------------------------
/tests/migrations/impg/5_statement.up.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE histories (id INT PRIMARY KEY, created_at DATE);
2 |
3 | CREATE OR REPLACE FUNCTION histories_partition_creation( DATE, DATE )
4 | returns void AS $$
5 | DECLARE
6 | create_query text;
7 | BEGIN
8 | FOR create_query IN SELECT
9 | 'CREATE TABLE IF NOT EXISTS histories_'
10 | || TO_CHAR( d, 'YYYY_MM' )
11 | || ' ( CHECK( created_at >= timestamp '''
12 | || TO_CHAR( d, 'YYYY-MM-DD 00:00:00' )
13 | || ''' AND created_at < timestamp '''
14 | || TO_CHAR( d + INTERVAL '1 month', 'YYYY-MM-DD 00:00:00' )
15 | || ''' ) ) inherits ( histories );'
16 | FROM generate_series( $1, $2, '1 month' ) AS d
17 | LOOP
18 | EXECUTE create_query;
19 | END LOOP; -- LOOP END
20 | END; -- FUNCTION END
21 | $$
22 | language plpgsql;
23 |
--------------------------------------------------------------------------------
/tests/migrations/impg/6_goose_issue158.down.sql:
--------------------------------------------------------------------------------
1 | DROP TABLE IF EXISTS doge;
2 |
--------------------------------------------------------------------------------
/tests/migrations/impg/6_goose_issue158.up.sql:
--------------------------------------------------------------------------------
1 | DO $$
2 | BEGIN
3 | IF NOT EXISTS (SELECT 1 FROM pg_type WHERE typname = 'things') THEN
4 | create type things AS ENUM ('hello', 'world');
5 | END IF;
6 | END
7 | $$;
8 |
9 | CREATE TABLE IF NOT EXISTS doge (
10 | id int,
11 | th things
12 | );
13 |
--------------------------------------------------------------------------------
/tests/migrations/migrate/101_wrong.down.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE foo (id int);
2 | ALTER TABLE users DROP COLUMN IF EXISTS email;
3 |
--------------------------------------------------------------------------------
/tests/migrations/migrate/101_wrong.up.sql:
--------------------------------------------------------------------------------
1 | ALTER TABLE users ADD COLUMN email VARCHAR;
2 | DROP TABLE foo;
--------------------------------------------------------------------------------
/tests/migrations/migrate/102_never.down.sql:
--------------------------------------------------------------------------------
1 | DROP TABLE IF EXISTS never;
2 |
--------------------------------------------------------------------------------
/tests/migrations/migrate/102_never.up.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE never (
2 | id INT PRIMARY KEY
3 | );
4 |
--------------------------------------------------------------------------------
/tests/migrations/migrate/1_users.down.sql:
--------------------------------------------------------------------------------
1 | DROP TABLE IF EXISTS users;
2 |
--------------------------------------------------------------------------------
/tests/migrations/migrate/1_users.up.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE users (
2 | id INT PRIMARY KEY,
3 | name VARCHAR(128),
4 | migastas INT NOT NULL DEFAULT 0
5 | );
6 |
--------------------------------------------------------------------------------
/tests/migrations/migrate/2_wallets.down.sql:
--------------------------------------------------------------------------------
1 | DROP TABLE IF EXISTS wallets;
2 |
--------------------------------------------------------------------------------
/tests/migrations/migrate/2_wallets.up.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE wallets (
2 | id INT PRIMARY KEY,
3 | user_id int
4 | );
5 |
--------------------------------------------------------------------------------
/tests/migrations/migrate/3_add_users_email.down.sql:
--------------------------------------------------------------------------------
1 | ALTER TABLE users DROP COLUMN email;
2 |
--------------------------------------------------------------------------------
/tests/migrations/migrate/3_add_users_email.up.sql:
--------------------------------------------------------------------------------
1 | ALTER TABLE users ADD COLUMN email VARCHAR(128);
2 |
--------------------------------------------------------------------------------
/tests/migrations/migrate/4_text.down.sql:
--------------------------------------------------------------------------------
1 | DELETE FROM users WHERE id = 1;
--------------------------------------------------------------------------------
/tests/migrations/migrate/4_text.up.sql:
--------------------------------------------------------------------------------
1 | INSERT INTO users (id, name) VALUES (1, 'Abib;Rabib');
2 |
--------------------------------------------------------------------------------
/tests/migrations/migrate/5_statement.down.sql:
--------------------------------------------------------------------------------
1 | DROP FUNCTION IF EXISTS histories_partition_creation( DATE, DATE );
2 | DROP TABLE IF EXISTS histories CASCADE;
--------------------------------------------------------------------------------
/tests/migrations/migrate/5_statement.up.sql:
--------------------------------------------------------------------------------
1 | CREATE TABLE histories (id INT PRIMARY KEY, created_at DATE);
2 |
3 | CREATE OR REPLACE FUNCTION histories_partition_creation( DATE, DATE )
4 | returns void AS $$
5 | DECLARE
6 | create_query text;
7 | BEGIN
8 | FOR create_query IN SELECT
9 | 'CREATE TABLE IF NOT EXISTS histories_'
10 | || TO_CHAR( d, 'YYYY_MM' )
11 | || ' ( CHECK( created_at >= timestamp '''
12 | || TO_CHAR( d, 'YYYY-MM-DD 00:00:00' )
13 | || ''' AND created_at < timestamp '''
14 | || TO_CHAR( d + INTERVAL '1 month', 'YYYY-MM-DD 00:00:00' )
15 | || ''' ) ) inherits ( histories );'
16 | FROM generate_series( $1, $2, '1 month' ) AS d
17 | LOOP
18 | EXECUTE create_query;
19 | END LOOP; -- LOOP END
20 | END; -- FUNCTION END
21 | $$
22 | language plpgsql;
23 |
--------------------------------------------------------------------------------
/tests/migrations/migrate/6_goose_issue158.down.sql:
--------------------------------------------------------------------------------
1 | DROP TABLE IF EXISTS doge;
2 |
--------------------------------------------------------------------------------
/tests/migrations/migrate/6_goose_issue158.up.sql:
--------------------------------------------------------------------------------
1 | DO $$
2 | BEGIN
3 | IF NOT EXISTS (SELECT 1 FROM pg_type WHERE typname = 'things') THEN
4 | create type things AS ENUM ('hello', 'world');
5 | END IF;
6 | END
7 | $$;
8 |
9 | CREATE TABLE IF NOT EXISTS doge (
10 | id int,
11 | th things
12 | );
13 |
--------------------------------------------------------------------------------
/utils/file.go:
--------------------------------------------------------------------------------
1 | package utils
2 |
3 | import (
4 | "fmt"
5 | "os"
6 |
7 | "miga/logger"
8 | )
9 |
10 | func CreateMigrationsFiles(
11 | version int64,
12 | dir, name, ext string,
13 | ) (upFileName, downFileName string, err error) {
14 | if dir[len(dir)-1] != '/' {
15 | dir += "/"
16 | }
17 |
18 | upFileName = fmt.Sprintf("%v%v_%v.up.%s", dir, version, name, ext)
19 | downFileName = fmt.Sprintf("%v%v_%v.down.%s", dir, version, name, ext)
20 |
21 | os.MkdirAll(dir, os.ModePerm)
22 |
23 | err = createFile(upFileName)
24 | if err != nil {
25 | return
26 | }
27 |
28 | err = createFile(downFileName)
29 | return
30 | }
31 |
32 | func createFile(fname string) error {
33 | _, err := os.Create(fname)
34 | if err != nil {
35 | return err
36 | }
37 | logger.G().Infof("Create migrations file: %s", fname)
38 | return nil
39 | }
40 |
--------------------------------------------------------------------------------
/utils/logger.go:
--------------------------------------------------------------------------------
1 | package utils
2 |
3 | import "miga/logger"
4 |
5 | type StdLogger struct{}
6 |
7 | func (l *StdLogger) Printf(format string, v ...interface{}) {
8 | logger.G().Infof(format, v...)
9 | }
10 |
11 | func (l *StdLogger) Verbose() bool {
12 | return true
13 | }
14 |
15 | func (l *StdLogger) Fatal(v ...interface{}) {
16 | logger.G().Fatal(v)
17 | }
18 | func (l *StdLogger) Fatalf(format string, v ...interface{}) {
19 | logger.G().Fatalf(format, v...)
20 | }
21 | func (l *StdLogger) Print(v ...interface{}) {
22 | logger.G().Info(v...)
23 | }
24 | func (l *StdLogger) Println(v ...interface{}) {
25 | logger.G().Info(v...)
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/filippo.io/edwards25519/field/fe_amd64.go:
--------------------------------------------------------------------------------
1 | // Code generated by command: go run fe_amd64_asm.go -out ../fe_amd64.s -stubs ../fe_amd64.go -pkg field. DO NOT EDIT.
2 |
3 | //go:build amd64 && gc && !purego
4 | // +build amd64,gc,!purego
5 |
6 | package field
7 |
8 | // feMul sets out = a * b. It works like feMulGeneric.
9 | //
10 | //go:noescape
11 | func feMul(out *Element, a *Element, b *Element)
12 |
13 | // feSquare sets out = a * a. It works like feSquareGeneric.
14 | //
15 | //go:noescape
16 | func feSquare(out *Element, a *Element)
17 |
--------------------------------------------------------------------------------
/vendor/filippo.io/edwards25519/field/fe_amd64_noasm.go:
--------------------------------------------------------------------------------
1 | // Copyright (c) 2019 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build !amd64 || !gc || purego
6 | // +build !amd64 !gc purego
7 |
8 | package field
9 |
10 | func feMul(v, x, y *Element) { feMulGeneric(v, x, y) }
11 |
12 | func feSquare(v, x *Element) { feSquareGeneric(v, x) }
13 |
--------------------------------------------------------------------------------
/vendor/filippo.io/edwards25519/field/fe_arm64.go:
--------------------------------------------------------------------------------
1 | // Copyright (c) 2020 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build arm64 && gc && !purego
6 | // +build arm64,gc,!purego
7 |
8 | package field
9 |
10 | //go:noescape
11 | func carryPropagate(v *Element)
12 |
13 | func (v *Element) carryPropagate() *Element {
14 | carryPropagate(v)
15 | return v
16 | }
17 |
--------------------------------------------------------------------------------
/vendor/filippo.io/edwards25519/field/fe_arm64_noasm.go:
--------------------------------------------------------------------------------
1 | // Copyright (c) 2021 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build !arm64 || !gc || purego
6 | // +build !arm64 !gc purego
7 |
8 | package field
9 |
10 | func (v *Element) carryPropagate() *Element {
11 | return v.carryPropagateGeneric()
12 | }
13 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/AUTHORS:
--------------------------------------------------------------------------------
1 | ClickHouse, LLC.
2 | The Go Faster Authors
3 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/bool.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | const (
4 | boolTrue uint8 = 1
5 | boolFalse uint8 = 0
6 | )
7 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/client_code.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | //go:generate go run github.com/dmarkham/enumer -type ClientCode -trimprefix ClientCode -output client_code_enum.go
4 |
5 | // ClientCode is sent from client to server.
6 | type ClientCode byte
7 |
8 | // Possible client codes.
9 | const (
10 | ClientCodeHello ClientCode = 0 // client part of "handshake"
11 | ClientCodeQuery ClientCode = 1 // query start
12 | ClientCodeData ClientCode = 2 // data block (can be compressed)
13 | ClientCodeCancel ClientCode = 3 // query cancel
14 | ClientCodePing ClientCode = 4 // ping request to server
15 | ClientTablesStatusRequest ClientCode = 5 // tables status request
16 | )
17 |
18 | // Encode to buffer.
19 | func (c ClientCode) Encode(b *Buffer) { b.PutByte(byte(c)) }
20 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/client_data.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | import "github.com/go-faster/errors"
4 |
5 | type ClientData struct {
6 | TableName string
7 | }
8 |
9 | func (c ClientData) EncodeAware(b *Buffer, version int) {
10 | if FeatureTempTables.In(version) {
11 | b.PutString(c.TableName)
12 | }
13 | }
14 |
15 | func (c *ClientData) DecodeAware(r *Reader, version int) error {
16 | if FeatureTempTables.In(version) {
17 | v, err := r.Str()
18 | if err != nil {
19 | return errors.Wrap(err, "temp tables")
20 | }
21 | c.TableName = v
22 | }
23 | return nil
24 | }
25 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/col_date32_gen.go:
--------------------------------------------------------------------------------
1 | // Code generated by ./cmd/ch-gen-col, DO NOT EDIT.
2 |
3 | package proto
4 |
5 | // ColDate32 represents Date32 column.
6 | type ColDate32 []Date32
7 |
8 | // Compile-time assertions for ColDate32.
9 | var (
10 | _ ColInput = ColDate32{}
11 | _ ColResult = (*ColDate32)(nil)
12 | _ Column = (*ColDate32)(nil)
13 | )
14 |
15 | // Rows returns count of rows in column.
16 | func (c ColDate32) Rows() int {
17 | return len(c)
18 | }
19 |
20 | // Reset resets data in row, preserving capacity for efficiency.
21 | func (c *ColDate32) Reset() {
22 | *c = (*c)[:0]
23 | }
24 |
25 | // Type returns ColumnType of Date32.
26 | func (ColDate32) Type() ColumnType {
27 | return ColumnTypeDate32
28 | }
29 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/col_date_gen.go:
--------------------------------------------------------------------------------
1 | // Code generated by ./cmd/ch-gen-col, DO NOT EDIT.
2 |
3 | package proto
4 |
5 | // ColDate represents Date column.
6 | type ColDate []Date
7 |
8 | // Compile-time assertions for ColDate.
9 | var (
10 | _ ColInput = ColDate{}
11 | _ ColResult = (*ColDate)(nil)
12 | _ Column = (*ColDate)(nil)
13 | )
14 |
15 | // Rows returns count of rows in column.
16 | func (c ColDate) Rows() int {
17 | return len(c)
18 | }
19 |
20 | // Reset resets data in row, preserving capacity for efficiency.
21 | func (c *ColDate) Reset() {
22 | *c = (*c)[:0]
23 | }
24 |
25 | // Type returns ColumnType of Date.
26 | func (ColDate) Type() ColumnType {
27 | return ColumnTypeDate
28 | }
29 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/col_uint8_safe_gen.go:
--------------------------------------------------------------------------------
1 | // Code generated by ./cmd/ch-gen-col, DO NOT EDIT.
2 |
3 | package proto
4 |
5 | import (
6 | "encoding/binary"
7 |
8 | "github.com/go-faster/errors"
9 | )
10 |
11 | var _ = binary.LittleEndian // clickHouse uses LittleEndian
12 |
13 | // DecodeColumn decodes UInt8 rows from *Reader.
14 | func (c *ColUInt8) DecodeColumn(r *Reader, rows int) error {
15 | if rows == 0 {
16 | return nil
17 | }
18 | data, err := r.ReadRaw(rows)
19 | if err != nil {
20 | return errors.Wrap(err, "read")
21 | }
22 | *c = append(*c, data...)
23 | return nil
24 | }
25 |
26 | // EncodeColumn encodes UInt8 rows to *Buffer.
27 | func (c ColUInt8) EncodeColumn(b *Buffer) {
28 | v := c
29 | if len(v) == 0 {
30 | return
31 | }
32 | b.Buf = append(b.Buf, v...)
33 | }
34 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/compression.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | //go:generate go run github.com/dmarkham/enumer -type Compression -trimprefix Compression -output compression_enum.go
4 |
5 | // Compression status.
6 | type Compression byte
7 |
8 | // Compression statuses.
9 | const (
10 | CompressionDisabled Compression = 0
11 | CompressionEnabled Compression = 1
12 | )
13 |
14 | // Encode to buffer.
15 | func (c Compression) Encode(b *Buffer) {
16 | b.PutUVarInt(uint64(c))
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/datetime.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | import "time"
4 |
5 | // DateTime represents DateTime type.
6 | type DateTime uint32
7 |
8 | // ToDateTime converts time.Time to DateTime.
9 | func ToDateTime(t time.Time) DateTime {
10 | if t.IsZero() {
11 | return 0
12 | }
13 | return DateTime(t.Unix())
14 | }
15 |
16 | // Time returns DateTime as time.Time.
17 | func (d DateTime) Time() time.Time {
18 | // https://clickhouse.com/docs/en/sql-reference/data-types/datetime/#usage-remarks
19 | // ClickHouse stores UTC timestamps that are timezone-agnostic.
20 | return time.Unix(int64(d), 0)
21 | }
22 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/decimal.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | // Decimal32 represents Decimal32 value.
4 | type Decimal32 int32
5 |
6 | // Decimal64 represents Decimal32 value.
7 | type Decimal64 int64
8 |
9 | // Decimal128 represents Decimal128 value.
10 | type Decimal128 Int128
11 |
12 | // Decimal256 represents Decimal256 value.
13 | type Decimal256 Int256
14 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/enum16.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | // Enum16 represents raw Enum16 value.
4 | //
5 | // Actual values should be taken from DDL.
6 | type Enum16 int16
7 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/enum8.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | // Enum8 represents raw Enum8 value.
4 | //
5 | // Actual values should be taken from DDL.
6 | type Enum8 int8
7 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/error.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | import "fmt"
4 |
5 | // Error on server side.
6 | type Error int
7 |
8 | func (e Error) Error() string {
9 | if e.IsAError() {
10 | return fmt.Sprintf("%s (%d)", e.String(), e)
11 | }
12 | return fmt.Sprintf("UNKNOWN (%d)", e)
13 | }
14 |
15 | //go:generate go run github.com/dmarkham/enumer -transform snake_upper -type Error -trimprefix Err -output error_enum.go
16 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/gen.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | //go:generate go run ./cmd/ch-gen-col
4 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/ipv4.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | import (
4 | "encoding/binary"
5 | "net/netip"
6 | )
7 |
8 | // IPv4 represents IPv4 address as uint32 number.
9 | //
10 | // Not using netip.Addr because uint32 is 5 times faster,
11 | // consumes 6 times less memory and better represents IPv4.
12 | //
13 | // Use ToIP helper for convenience.
14 | type IPv4 uint32
15 |
16 | func (v IPv4) String() string {
17 | return v.ToIP().String()
18 | }
19 |
20 | // ToIP represents IPv4 as netaddr.IP.
21 | func (v IPv4) ToIP() netip.Addr {
22 | var buf [4]byte
23 | binary.BigEndian.PutUint32(buf[:], uint32(v))
24 | return netip.AddrFrom4(buf)
25 | }
26 |
27 | // ToIPv4 represents ip as IPv4. Panics if ip is not ipv4.
28 | func ToIPv4(ip netip.Addr) IPv4 {
29 | b := ip.As4()
30 | return IPv4(binary.BigEndian.Uint32(b[:]))
31 | }
32 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/ipv6.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | import (
4 | "net/netip"
5 | )
6 |
7 | // IPv6 represents IPv6 address.
8 | //
9 | // Same as FixedString(16) internally in ClickHouse.
10 | type IPv6 [16]byte
11 |
12 | func (v IPv6) String() string {
13 | return v.ToIP().String()
14 | }
15 |
16 | // ToIP represents IPv6 as netip.IP.
17 | func (v IPv6) ToIP() netip.Addr {
18 | return netip.AddrFrom16(v)
19 | }
20 |
21 | // ToIPv6 represents ip as IPv6.
22 | func ToIPv6(ip netip.Addr) IPv6 { return ip.As16() }
23 |
24 | func binIPv6(b []byte) IPv6 { return *(*[16]byte)(b) }
25 | func binPutIPv6(b []byte, v IPv6) { copy(b, v[:]) }
26 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/proto.go:
--------------------------------------------------------------------------------
1 | // Package proto implements ClickHouse wire protocol.
2 | package proto
3 |
4 | // Defaults for ClientHello.
5 | const (
6 | Version = 54460
7 | Name = "clickhouse/ch-go"
8 | )
9 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/reset.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | type Resettable interface {
4 | Reset()
5 | }
6 |
7 | // Reset is helper to reset columns.
8 | func Reset(columns ...Resettable) {
9 | for _, column := range columns {
10 | column.Reset()
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/slice_unsafe.go:
--------------------------------------------------------------------------------
1 | //go:build (amd64 || arm64 || riscv64) && !purego
2 |
3 | package proto
4 |
5 | import "unsafe"
6 |
7 | // slice represents slice header.
8 | //
9 | // Used in optimizations when we can interpret [N]T as [M]byte, where
10 | // M = sizeof(T) * N.
11 | //
12 | // NB: careful with endianness!
13 | type slice struct {
14 | Data unsafe.Pointer
15 | Len uintptr
16 | Cap uintptr
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/stage.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | // Stage of query till SELECT should be executed.
4 | type Stage byte
5 |
6 | // Encode to buffer.
7 | func (s Stage) Encode(b *Buffer) { b.PutUVarInt(uint64(s)) }
8 |
9 | //go:generate go run github.com/dmarkham/enumer -type Stage -trimprefix Stage -output stage_enum.go
10 |
11 | // StageComplete is query complete.
12 | const (
13 | StageFetchColumns Stage = 0
14 | StageWithMergeableState Stage = 1
15 | StageComplete Stage = 2
16 | )
17 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/ch-go/proto/table_columns.go:
--------------------------------------------------------------------------------
1 | package proto
2 |
3 | import "github.com/go-faster/errors"
4 |
5 | type TableColumns struct {
6 | First string
7 | Second string
8 | }
9 |
10 | func (c *TableColumns) DecodeAware(r *Reader, _ int) error {
11 | {
12 | v, err := r.Str()
13 | if err != nil {
14 | return errors.Wrap(err, "first")
15 | }
16 | c.First = v
17 | }
18 | {
19 | v, err := r.Str()
20 | if err != nil {
21 | return errors.Wrap(err, "second")
22 | }
23 | c.Second = v
24 | }
25 | return nil
26 | }
27 |
28 | func (c TableColumns) EncodeAware(b *Buffer, _ int) {
29 | ServerCodeTableColumns.Encode(b)
30 | b.PutString(c.First)
31 | b.PutString(c.Second)
32 | }
33 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/clickhouse-go/v2/.gitignore:
--------------------------------------------------------------------------------
1 | # Compiled Object files, Static and Dynamic libs (Shared Objects)
2 | *.o
3 | *.a
4 | *.so
5 | *.cap
6 |
7 | # Folders
8 | _obj
9 | _test
10 |
11 | # Architecture specific extensions/prefixes
12 | *.[568vq]
13 | [568vq].out
14 |
15 | *.cgo1.go
16 | *.cgo2.c
17 | _cgo_defun.c
18 | _cgo_gotypes.go
19 | _cgo_export.*
20 |
21 | _testmain.go
22 |
23 | *.out
24 | *.exe
25 | *.test
26 | *.prof
27 |
28 | coverage.txt
29 | .idea/**
30 | dev/*
31 | .run/**
32 |
33 | vendor
34 |
35 | **.tfstate*
36 | .terraform.lock.hcl
37 | **/.terraform*
38 | pipeline.auto.tfvars
39 | *.tfvars
40 |
41 | .env
42 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/clickhouse-go/v2/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing notes
2 |
3 | ## Local setup
4 |
5 | The easiest way to run tests is to use Docker Compose:
6 |
7 | ```
8 | docker-compose up
9 | make
10 | ```
11 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/clickhouse-go/v2/contributors/list:
--------------------------------------------------------------------------------
1 | Kuba Kaflik
2 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/clickhouse-go/v2/docker-compose.yml:
--------------------------------------------------------------------------------
1 | ---
2 | version: '3.9'
3 | services:
4 | clickhouse:
5 | networks:
6 | - clickhouse
7 | container_name: clickhouse
8 | image: clickhouse/clickhouse-server
9 | ports:
10 | - 127.0.0.1:8123:8123
11 | - 127.0.0.1:9000:9000
12 | - 127.0.0.1:9009:9009
13 | networks:
14 | clickhouse: null
15 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/clickhouse-go/v2/go.test.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -e
4 | echo "" > coverage.txt
5 |
6 | for d in $(go list ./... | grep -v vendor | grep -v examples); do
7 | go test -race -coverprofile=profile.out -covermode=atomic $d
8 | if [ -f profile.out ]; then
9 | cat profile.out >> coverage.txt
10 | rm profile.out
11 | fi
12 | done
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/clickhouse-go/v2/lib/driver/options.go:
--------------------------------------------------------------------------------
1 | package driver
2 |
3 | type PrepareBatchOptions struct {
4 | ReleaseConnection bool
5 | CloseOnFlush bool
6 | }
7 |
8 | type PrepareBatchOption func(options *PrepareBatchOptions)
9 |
10 | func WithReleaseConnection() PrepareBatchOption {
11 | return func(options *PrepareBatchOptions) {
12 | options.ReleaseConnection = true
13 | }
14 | }
15 |
16 | // WithCloseOnFlush closes batch INSERT query when Flush is executed
17 | func WithCloseOnFlush() PrepareBatchOption {
18 | return func(options *PrepareBatchOptions) {
19 | options.CloseOnFlush = true
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/vendor/github.com/ClickHouse/clickhouse-go/v2/resources/meta.yml:
--------------------------------------------------------------------------------
1 | clickhouse_versions:
2 | - 22.3
3 | - 22.8
4 | - 22.9
5 | - 22.10
6 | - 22.11
7 | go_versions:
8 | - 1.18
9 | - 1.19
10 |
--------------------------------------------------------------------------------
/vendor/github.com/andybalholm/brotli/README.md:
--------------------------------------------------------------------------------
1 | This package is a brotli compressor and decompressor implemented in Go.
2 | It was translated from the reference implementation (https://github.com/google/brotli)
3 | with the `c2go` tool at https://github.com/andybalholm/c2go.
4 |
5 | I have been working on new compression algorithms (not translated from C)
6 | in the matchfinder package.
7 | You can use them with the NewWriterV2 function.
8 | Currently they give better results than the old implementation
9 | (at least for compressing my test file, Newton’s *Opticks*)
10 | on levels 2 to 6.
11 |
12 | I am using it in production with https://github.com/andybalholm/redwood.
13 |
14 | API documentation is found at https://pkg.go.dev/github.com/andybalholm/brotli?tab=doc.
15 |
--------------------------------------------------------------------------------
/vendor/github.com/andybalholm/brotli/encoder_dict.go:
--------------------------------------------------------------------------------
1 | package brotli
2 |
3 | /* Dictionary data (words and transforms) for 1 possible context */
4 | type encoderDictionary struct {
5 | words *dictionary
6 | cutoffTransformsCount uint32
7 | cutoffTransforms uint64
8 | hash_table []uint16
9 | buckets []uint16
10 | dict_words []dictWord
11 | }
12 |
13 | func initEncoderDictionary(dict *encoderDictionary) {
14 | dict.words = getDictionary()
15 |
16 | dict.hash_table = kStaticDictionaryHash[:]
17 | dict.buckets = kStaticDictionaryBuckets[:]
18 | dict.dict_words = kStaticDictionaryWords[:]
19 |
20 | dict.cutoffTransformsCount = kCutoffTransformsCount
21 | dict.cutoffTransforms = kCutoffTransforms
22 | }
23 |
--------------------------------------------------------------------------------
/vendor/github.com/andybalholm/brotli/symbol_list.go:
--------------------------------------------------------------------------------
1 | package brotli
2 |
3 | /* Copyright 2013 Google Inc. All Rights Reserved.
4 |
5 | Distributed under MIT license.
6 | See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
7 | */
8 |
9 | /* Utilities for building Huffman decoding tables. */
10 |
11 | type symbolList struct {
12 | storage []uint16
13 | offset int
14 | }
15 |
16 | func symbolListGet(sl symbolList, i int) uint16 {
17 | return sl.storage[i+sl.offset]
18 | }
19 |
20 | func symbolListPut(sl symbolList, i int, val uint16) {
21 | sl.storage[i+sl.offset] = val
22 | }
23 |
--------------------------------------------------------------------------------
/vendor/github.com/andybalholm/brotli/util.go:
--------------------------------------------------------------------------------
1 | package brotli
2 |
3 | func assert(cond bool) {
4 | if !cond {
5 | panic("assertion failure")
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/vendor/github.com/elastic/go-sysinfo/.editorconfig:
--------------------------------------------------------------------------------
1 | # See: http://editorconfig.org
2 | root = true
3 |
4 | [*]
5 | charset = utf-8
6 | end_of_line = lf
7 | insert_final_newline = true
8 | trim_trailing_whitespace = true
9 |
10 | [*.json]
11 | indent_size = 2
12 | indent_style = space
13 |
14 | [*.py]
15 | indent_style = space
16 | indent_size = 4
17 |
18 | [*.yml]
19 | indent_style = space
20 | indent_size = 2
21 |
22 | [Makefile]
23 | indent_style = tab
24 |
25 | [Vagrantfile]
26 | indent_size = 2
27 | indent_style = space
28 |
--------------------------------------------------------------------------------
/vendor/github.com/elastic/go-sysinfo/.gitattributes:
--------------------------------------------------------------------------------
1 | # Treat all files in the Go repo as binary, with no git magic updating
2 | # line endings. Windows users contributing to Go will need to use a
3 | # modern version of git and editors capable of LF line endings.
4 |
5 | * -text
6 |
--------------------------------------------------------------------------------
/vendor/github.com/elastic/go-sysinfo/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 | *.swp
3 | *.o
4 | .idea
5 | .vagrant
6 | _obj
7 |
8 | *TEST.out
9 |
10 | build/
11 | **/testdata/fuzz
12 |
--------------------------------------------------------------------------------
/vendor/github.com/elastic/go-sysinfo/.golangci.yml:
--------------------------------------------------------------------------------
1 | ---
2 |
3 | run:
4 | issues-exit-code: 1
5 | modules-download-mode: readonly
6 |
7 | linters:
8 | disable-all: true
9 | fast: false
10 | enable:
11 | - goimports
12 | - revive
13 |
14 | linters-settings:
15 | goimports:
16 | local-prefixes: github.com/elastic/go-sysinfo
17 |
--------------------------------------------------------------------------------
/vendor/github.com/elastic/go-sysinfo/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing
2 |
3 | Pull requests are welcomed. You must
4 |
5 | - Sign the Elastic [Contributor License Agreement](https://www.elastic.co/contributor-agreement).
6 | - Include a [changelog][changelog_docs] entry at `.changelog/{pr-number}.txt` with your pull request.
7 | - Include tests that demonstrate the change is working.
8 |
9 | [changelog_docs]: https://github.com/GoogleCloudPlatform/magic-modules/blob/2834761fec3acbf35cacbffe100530f82eada650/.ci/RELEASE_NOTES_GUIDE.md#expected-format
10 |
11 | ## Releasing
12 |
13 | To create a new release use the release workflow in GitHub actions. This will create a new draft
14 | release in GitHub releases with a changelog. After the job completes, review the draft and if
15 | everything is correct, publish the release. When the release is published GitHub will create the
16 | git tag.
17 |
--------------------------------------------------------------------------------
/vendor/github.com/elastic/go-sysinfo/Makefile:
--------------------------------------------------------------------------------
1 | .phony: update
2 | update: fmt lic imports
3 |
4 | .PHONY: lic
5 | lic:
6 | go run github.com/elastic/go-licenser@latest
7 |
8 | .PHONY: fmt
9 | fmt:
10 | go run mvdan.cc/gofumpt@latest -w -l ./
11 |
12 | .PHONY: imports
13 | imports:
14 | go run golang.org/x/tools/cmd/goimports@latest -l -local github.com/elastic/go-sysinfo ./
15 |
--------------------------------------------------------------------------------
/vendor/github.com/elastic/go-sysinfo/NOTICE.txt:
--------------------------------------------------------------------------------
1 | Elastic go-sysinfo
2 | Copyright 2017-2022 Elasticsearch B.V.
3 |
4 | This product includes software developed at
5 | Elasticsearch, B.V. (https://www.elastic.co/).
6 |
--------------------------------------------------------------------------------
/vendor/github.com/elastic/go-windows/.gitattributes:
--------------------------------------------------------------------------------
1 | # Treat all files in the Go repo as binary, with no git magic updating
2 | # line endings. Windows users contributing to Go will need to use a
3 | # modern version of git and editors capable of LF line endings.
4 |
5 | * -text
6 |
--------------------------------------------------------------------------------
/vendor/github.com/elastic/go-windows/.gitignore:
--------------------------------------------------------------------------------
1 | # Directories
2 | /.vagrant
3 | /.idea
4 | /build
5 |
6 | # Files
7 | .DS_Store
8 | /*.iml
9 | *.h
10 |
11 | # Editor swap files
12 | *.swp
13 | *.swo
14 | *.swn
15 |
16 | # Compiled Object files, Static and Dynamic libs (Shared Objects)
17 | *.o
18 | *.a
19 | *.so
20 | *.exe
21 | *.test
22 | *.prof
23 | *.pyc
24 | *.swp
25 |
--------------------------------------------------------------------------------
/vendor/github.com/elastic/go-windows/.travis.yml:
--------------------------------------------------------------------------------
1 | sudo: false
2 |
3 | language: go
4 |
5 | os:
6 | - windows
7 | - linux
8 |
9 | go:
10 | - 1.12.x
11 |
12 | env:
13 | - GO111MODULE=on
14 |
15 | go_import_path: github.com/elastic/go-windows
16 |
17 | before_install:
18 | - GO111MODULE=off go get -u github.com/elastic/go-licenser
19 |
20 | script:
21 | - go mod verify
22 | - go-licenser -d
23 | - go run .ci/scripts/check_format.go
24 | - go run .ci/scripts/check_lint.go
25 | - go test -v ./...
26 |
--------------------------------------------------------------------------------
/vendor/github.com/elastic/go-windows/NOTICE.txt:
--------------------------------------------------------------------------------
1 | Elastic go-windows
2 | Copyright 2017-2019 Elasticsearch B.V.
3 |
4 | This product includes software developed at
5 | Elasticsearch, B.V. (https://www.elastic.co/).
6 |
--------------------------------------------------------------------------------
/vendor/github.com/elastic/go-windows/README.md:
--------------------------------------------------------------------------------
1 | # go-windows
2 |
3 | [][travis]
4 | [][appveyor]
5 | [][godocs]
6 |
7 | [travis]: http://travis-ci.org/elastic/go-windows
8 | [appveyor]: https://ci.appveyor.com/project/elastic-beats/go-windows/branch/master
9 | [godocs]: http://godoc.org/github.com/elastic/go-windows
10 |
11 | go-windows is a library for Go (golang) that provides wrappers to various
12 | Windows APIs that are not covered by the stdlib or by
13 | [golang.org/x/sys/windows](https://godoc.org/golang.org/x/sys/windows).
14 |
15 | Goals / Features
16 |
17 | - Does not use cgo.
18 | - Provide abstractions to make using the APIs easier.
19 |
--------------------------------------------------------------------------------
/vendor/github.com/fsnotify/fsnotify/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*.go]
4 | indent_style = tab
5 | indent_size = 4
6 | insert_final_newline = true
7 |
8 | [*.{yml,yaml}]
9 | indent_style = space
10 | indent_size = 2
11 | insert_final_newline = true
12 | trim_trailing_whitespace = true
13 |
--------------------------------------------------------------------------------
/vendor/github.com/fsnotify/fsnotify/.gitattributes:
--------------------------------------------------------------------------------
1 | go.sum linguist-generated
2 |
--------------------------------------------------------------------------------
/vendor/github.com/fsnotify/fsnotify/.gitignore:
--------------------------------------------------------------------------------
1 | # Setup a Global .gitignore for OS and editor generated files:
2 | # https://help.github.com/articles/ignoring-files
3 | # git config --global core.excludesfile ~/.gitignore_global
4 |
5 | .vagrant
6 | *.sublime-project
7 |
--------------------------------------------------------------------------------
/vendor/github.com/fsnotify/fsnotify/.travis.yml:
--------------------------------------------------------------------------------
1 | sudo: false
2 | language: go
3 |
4 | go:
5 | - "stable"
6 | - "1.11.x"
7 | - "1.10.x"
8 | - "1.9.x"
9 |
10 | matrix:
11 | include:
12 | - go: "stable"
13 | env: GOLINT=true
14 | allow_failures:
15 | - go: tip
16 | fast_finish: true
17 |
18 |
19 | before_install:
20 | - if [ ! -z "${GOLINT}" ]; then go get -u golang.org/x/lint/golint; fi
21 |
22 | script:
23 | - go test --race ./...
24 |
25 | after_script:
26 | - test -z "$(gofmt -s -l -w . | tee /dev/stderr)"
27 | - if [ ! -z "${GOLINT}" ]; then echo running golint; golint --set_exit_status ./...; else echo skipping golint; fi
28 | - go vet ./...
29 |
30 | os:
31 | - linux
32 | - osx
33 | - windows
34 |
35 | notifications:
36 | email: false
37 |
--------------------------------------------------------------------------------
/vendor/github.com/fsnotify/fsnotify/open_mode_bsd.go:
--------------------------------------------------------------------------------
1 | // Copyright 2013 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | // +build freebsd openbsd netbsd dragonfly
6 |
7 | package fsnotify
8 |
9 | import "golang.org/x/sys/unix"
10 |
11 | const openMode = unix.O_NONBLOCK | unix.O_RDONLY | unix.O_CLOEXEC
12 |
--------------------------------------------------------------------------------
/vendor/github.com/fsnotify/fsnotify/open_mode_darwin.go:
--------------------------------------------------------------------------------
1 | // Copyright 2013 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | // +build darwin
6 |
7 | package fsnotify
8 |
9 | import "golang.org/x/sys/unix"
10 |
11 | // note: this constant is not defined on BSD
12 | const openMode = unix.O_EVTONLY | unix.O_CLOEXEC
13 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/city/.codecov.yml:
--------------------------------------------------------------------------------
1 | ignore:
2 | # We have only auxiliary binaries in internal/ no actual user-facing code.
3 | - internal/**
4 | coverage:
5 | status:
6 | patch: false
7 | project:
8 | default:
9 | threshold: 0.5%
10 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/city/.gitignore:
--------------------------------------------------------------------------------
1 | # Binaries for programs and plugins
2 | *.exe
3 | *.exe~
4 | *.dll
5 | *.so
6 | *.dylib
7 |
8 | # Test binary, build with `go test -c`
9 | *.test
10 |
11 | # Output of the go coverage tool, specifically when used with LiteIDE
12 | *.out
13 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/city/Makefile:
--------------------------------------------------------------------------------
1 | test:
2 | @./go.test.sh
3 | .PHONY: test
4 |
5 | coverage:
6 | @./go.coverage.sh
7 | .PHONY: coverage
8 |
9 | test_fast:
10 | go test ./...
11 |
12 | tidy:
13 | go mod tidy
14 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/city/doc.go:
--------------------------------------------------------------------------------
1 | // Package city implements CityHash in go.
2 | package city
3 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/city/go.coverage.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -e
4 |
5 | go test -race -v -coverpkg=./... -coverprofile=profile.out ./...
6 | go tool cover -func profile.out
7 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/city/go.test.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -e
4 |
5 | echo "test"
6 | go test --timeout 5m ./...
7 |
8 | echo "test -race"
9 | go test --timeout 5m -race ./...
10 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/errors/.codecov.yml:
--------------------------------------------------------------------------------
1 | ignore:
2 | - cmd/**/*.go
3 | coverage:
4 | status:
5 | patch: false
6 | project:
7 | default:
8 | threshold: 0.5%
9 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/errors/.editorconfig:
--------------------------------------------------------------------------------
1 | # http://editorconfig.org/
2 |
3 | root = true
4 |
5 | [*]
6 | charset = utf-8
7 | insert_final_newline = true
8 | trim_trailing_whitespace = true
9 | end_of_line = lf
10 |
11 | [{*.go, go.mod}]
12 | indent_style = tab
13 | indent_size = 4
14 |
15 | [{*.yml,*.yaml}]
16 | indent_style = space
17 | indent_size = 2
18 |
19 | [*.py]
20 | indent_style = space
21 | indent_size = 4
22 |
23 | # Makefiles always use tabs for indentation
24 | [Makefile]
25 | indent_style = tab
26 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/errors/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | _bin/*
3 | ./examples
4 |
5 | *-fuzz.zip
6 |
7 | *.out
8 | *.dump
9 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/errors/Makefile:
--------------------------------------------------------------------------------
1 | test:
2 | @./go.test.sh
3 | .PHONY: test
4 |
5 | coverage:
6 | @./go.coverage.sh
7 | .PHONY: coverage
8 |
9 | tidy:
10 | go mod tidy
11 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/errors/doc.go:
--------------------------------------------------------------------------------
1 | // Copyright 2019 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | // Package errors implements functions to manipulate errors.
6 | //
7 | // This package expands "errors" with stack traces and explicit error
8 | // wrapping.
9 | package errors
10 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/errors/go.coverage.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -e
4 |
5 | go test -v -coverpkg=./... -coverprofile=profile.out ./...
6 | go tool cover -func profile.out
7 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/errors/go.test.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -e
4 |
5 | # test with -race
6 | echo "with race:"
7 | go test --timeout 5m -race ./...
8 |
9 | # test with noerrtrace build tag
10 | tag=noerrtrace
11 | echo "with ${tag} build tag:"
12 | go test -tags "${tag}" --timeout 5m -race ./...
13 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/errors/into.go:
--------------------------------------------------------------------------------
1 | //go:build go1.18
2 |
3 | package errors
4 |
5 | // Into finds the first error in err's chain that matches target type T, and if so, returns it.
6 | //
7 | // Into is type-safe alternative to As.
8 | func Into[T error](err error) (val T, ok bool) {
9 | ok = As(err, &val)
10 | return val, ok
11 | }
12 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/errors/join_go120.go:
--------------------------------------------------------------------------------
1 | //go:build go1.20
2 | // +build go1.20
3 |
4 | package errors
5 |
6 | import "errors"
7 |
8 | // Join returns an error that wraps the given errors.
9 | // Any nil error values are discarded.
10 | // Join returns nil if every value in errs is nil.
11 | // The error formats as the concatenation of the strings obtained
12 | // by calling the Error method of each element of errs, with a newline
13 | // between each string.
14 | //
15 | // A non-nil error returned by Join implements the Unwrap() []error method.
16 | //
17 | // Available only for go 1.20 or superior.
18 | func Join(errs ...error) error {
19 | return errors.Join(errs...)
20 | }
21 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/errors/must.go:
--------------------------------------------------------------------------------
1 | //go:build go1.18
2 |
3 | package errors
4 |
5 | // Must is a generic helper, like template.Must, that wraps a call to a function returning (T, error)
6 | // and panics if the error is non-nil.
7 | func Must[T any](val T, err error) T {
8 | if err != nil {
9 | panic(err)
10 | }
11 | return val
12 | }
13 |
--------------------------------------------------------------------------------
/vendor/github.com/go-faster/errors/noerrtrace.go:
--------------------------------------------------------------------------------
1 | //go:build noerrtrace
2 | // +build noerrtrace
3 |
4 | package errors
5 |
6 | // enableTrace does nothing.
7 | func enableTrace() {}
8 |
9 | // DisableTrace does nothing.
10 | func DisableTrace() {}
11 |
12 | // Trace always returns false.
13 | func Trace() bool { return false }
14 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/.travis.yml:
--------------------------------------------------------------------------------
1 | dist: trusty
2 | language: go
3 |
4 | addons:
5 | postgresql: "9.6"
6 |
7 | go:
8 | - 1.9.x
9 | - 1.10.x
10 | - 1.11.x
11 | - 1.12.x
12 | - tip
13 |
14 | matrix:
15 | allow_failures:
16 | - go: tip
17 |
18 | before_install:
19 | - psql -U postgres -c "CREATE EXTENSION hstore"
20 |
21 | install:
22 | - go get github.com/jinzhu/inflection
23 | - go get gopkg.in/check.v1
24 | - go get github.com/onsi/ginkgo
25 | - go get github.com/onsi/gomega
26 | - go get mellium.im/sasl
27 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/Makefile:
--------------------------------------------------------------------------------
1 | all:
2 | go test ./...
3 | go test ./... -short -race
4 | env GOOS=linux GOARCH=386 go test ./...
5 | go vet ./...
6 | go get github.com/gordonklaus/ineffassign
7 | ineffassign .
8 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/doc.go:
--------------------------------------------------------------------------------
1 | /*
2 | Package github.com/go-pg/pg implements a PostgreSQL client.
3 | */
4 | package pg
5 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/internal/internal.go:
--------------------------------------------------------------------------------
1 | package internal
2 |
3 | import (
4 | "math/rand"
5 | "time"
6 | )
7 |
8 | // Retry backoff with jitter sleep to prevent overloaded conditions during intervals
9 | // https://www.awsarchitectureblog.com/2015/03/backoff.html
10 | func RetryBackoff(retry int, minBackoff, maxBackoff time.Duration) time.Duration {
11 | if retry < 0 {
12 | retry = 0
13 | }
14 |
15 | backoff := minBackoff << uint(retry)
16 | if backoff > maxBackoff || backoff < minBackoff {
17 | backoff = maxBackoff
18 | }
19 |
20 | if backoff == 0 {
21 | return 0
22 | }
23 | return time.Duration(rand.Int63n(int64(backoff)))
24 | }
25 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/internal/log.go:
--------------------------------------------------------------------------------
1 | package internal
2 |
3 | import (
4 | "fmt"
5 | "log"
6 | )
7 |
8 | var Logger *log.Logger
9 |
10 | func Logf(s string, args ...interface{}) {
11 | if Logger == nil {
12 | return
13 | }
14 | Logger.Output(2, fmt.Sprintf(s, args...))
15 | }
16 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/internal/parser/util.go:
--------------------------------------------------------------------------------
1 | package parser
2 |
3 | func isNum(c byte) bool {
4 | return c >= '0' && c <= '9'
5 | }
6 |
7 | func isAlpha(c byte) bool {
8 | return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z')
9 | }
10 |
11 | func isAlnum(c byte) bool {
12 | return isAlpha(c) || isNum(c)
13 | }
14 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/internal/reader.go:
--------------------------------------------------------------------------------
1 | package internal
2 |
3 | type Reader interface {
4 | Buffered() int
5 |
6 | Bytes() []byte
7 | Read([]byte) (int, error)
8 | ReadByte() (byte, error)
9 | UnreadByte() error
10 | ReadSlice(byte) ([]byte, error)
11 | Discard(int) (int, error)
12 |
13 | //ReadBytes(fn func(byte) bool) ([]byte, error)
14 | //ReadN(int) ([]byte, error)
15 | ReadFull() ([]byte, error)
16 | ReadFullTemp() ([]byte, error)
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/internal/safe.go:
--------------------------------------------------------------------------------
1 | // +build appengine
2 |
3 | package internal
4 |
5 | func BytesToString(b []byte) string {
6 | return string(b)
7 | }
8 |
9 | func StringToBytes(s string) []byte {
10 | return []byte(s)
11 | }
12 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/internal/strconv.go:
--------------------------------------------------------------------------------
1 | package internal
2 |
3 | import "strconv"
4 |
5 | func Atoi(b []byte) (int, error) {
6 | return strconv.Atoi(BytesToString(b))
7 | }
8 |
9 | func ParseInt(b []byte, base int, bitSize int) (int64, error) {
10 | return strconv.ParseInt(BytesToString(b), base, bitSize)
11 | }
12 |
13 | func ParseUint(b []byte, base int, bitSize int) (uint64, error) {
14 | return strconv.ParseUint(BytesToString(b), base, bitSize)
15 | }
16 |
17 | func ParseFloat(b []byte, bitSize int) (float64, error) {
18 | return strconv.ParseFloat(BytesToString(b), bitSize)
19 | }
20 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/internal/unsafe.go:
--------------------------------------------------------------------------------
1 | // +build !appengine
2 |
3 | package internal
4 |
5 | import (
6 | "unsafe"
7 | )
8 |
9 | // BytesToString converts byte slice to string.
10 | func BytesToString(b []byte) string {
11 | return *(*string)(unsafe.Pointer(&b))
12 | }
13 |
14 | // StringToBytes converts string to byte slice.
15 | func StringToBytes(s string) []byte {
16 | return *(*[]byte)(unsafe.Pointer(
17 | &struct {
18 | string
19 | Cap int
20 | }{s, len(s)},
21 | ))
22 | }
23 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/orm/inflection.go:
--------------------------------------------------------------------------------
1 | package orm
2 |
3 | import (
4 | "github.com/jinzhu/inflection"
5 | )
6 |
7 | var tableNameInflector func(string) string
8 |
9 | func init() {
10 | SetTableNameInflector(inflection.Plural)
11 | }
12 |
13 | // SetTableNameInflector overrides the default func that pluralizes
14 | // model name to get table name, e.g. my_article becomes my_articles.
15 | func SetTableNameInflector(fn func(string) string) {
16 | tableNameInflector = fn
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/orm/model_discard.go:
--------------------------------------------------------------------------------
1 | package orm
2 |
3 | import (
4 | "github.com/go-pg/pg/types"
5 | )
6 |
7 | type Discard struct {
8 | hookStubs
9 | }
10 |
11 | var _ Model = (*Discard)(nil)
12 |
13 | func (Discard) Init() error {
14 | return nil
15 | }
16 |
17 | func (m Discard) NewModel() ColumnScanner {
18 | return m
19 | }
20 |
21 | func (m Discard) AddModel(ColumnScanner) error {
22 | return nil
23 | }
24 |
25 | func (m Discard) ScanColumn(colIdx int, colName string, rd types.Reader, n int) error {
26 | return nil
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/orm/relation.go:
--------------------------------------------------------------------------------
1 | package orm
2 |
3 | import (
4 | "fmt"
5 |
6 | "github.com/go-pg/pg/types"
7 | )
8 |
9 | const (
10 | HasOneRelation = 1 << iota
11 | BelongsToRelation
12 | HasManyRelation
13 | Many2ManyRelation
14 | )
15 |
16 | type Relation struct {
17 | Type int
18 | Field *Field
19 | JoinTable *Table
20 | FKs []*Field
21 | Polymorphic *Field
22 | FKValues []*Field
23 |
24 | M2MTableName types.Q
25 | M2MTableAlias types.Q
26 | BaseFKs []string
27 | JoinFKs []string
28 | }
29 |
30 | func (r *Relation) String() string {
31 | return fmt.Sprintf("relation=%s", r.Field.GoName)
32 | }
33 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/orm/result.go:
--------------------------------------------------------------------------------
1 | package orm
2 |
3 | // A Result summarizes an executed SQL command.
4 | type Result interface {
5 | Model() Model
6 |
7 | // RowsAffected returns the number of rows affected by SELECT, INSERT, UPDATE,
8 | // or DELETE queries. It returns -1 if query can't possibly affect any rows,
9 | // e.g. in case of CREATE or SHOW queries.
10 | RowsAffected() int
11 |
12 | // RowsReturned returns the number of rows returned by the query.
13 | RowsReturned() int
14 | }
15 |
--------------------------------------------------------------------------------
/vendor/github.com/go-pg/pg/orm/table_params.go:
--------------------------------------------------------------------------------
1 | package orm
2 |
3 | import "reflect"
4 |
5 | type tableParams struct {
6 | table *Table
7 | strct reflect.Value
8 | }
9 |
10 | func newTableParams(strct interface{}) (*tableParams, bool) {
11 | v := reflect.ValueOf(strct)
12 | if !v.IsValid() {
13 | return nil, false
14 | }
15 |
16 | v = reflect.Indirect(v)
17 | if v.Kind() != reflect.Struct {
18 | return nil, false
19 | }
20 |
21 | return &tableParams{
22 | table: GetTable(v.Type()),
23 | strct: v,
24 | }, true
25 | }
26 |
27 | func (m tableParams) AppendParam(b []byte, f QueryFormatter, name string) ([]byte, bool) {
28 | return m.table.AppendParam(b, m.strct, name)
29 | }
30 |
--------------------------------------------------------------------------------
/vendor/github.com/go-sql-driver/mysql/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | .DS_Store?
3 | ._*
4 | .Spotlight-V100
5 | .Trashes
6 | Icon?
7 | ehthumbs.db
8 | Thumbs.db
9 | .idea
10 |
--------------------------------------------------------------------------------
/vendor/github.com/go-sql-driver/mysql/atomic_bool.go:
--------------------------------------------------------------------------------
1 | // Go MySQL Driver - A MySQL-Driver for Go's database/sql package.
2 | //
3 | // Copyright 2022 The Go-MySQL-Driver Authors. All rights reserved.
4 | //
5 | // This Source Code Form is subject to the terms of the Mozilla Public
6 | // License, v. 2.0. If a copy of the MPL was not distributed with this file,
7 | // You can obtain one at http://mozilla.org/MPL/2.0/.
8 | //go:build go1.19
9 | // +build go1.19
10 |
11 | package mysql
12 |
13 | import "sync/atomic"
14 |
15 | /******************************************************************************
16 | * Sync utils *
17 | ******************************************************************************/
18 |
19 | type atomicBool = atomic.Bool
20 |
--------------------------------------------------------------------------------
/vendor/github.com/go-sql-driver/mysql/conncheck_dummy.go:
--------------------------------------------------------------------------------
1 | // Go MySQL Driver - A MySQL-Driver for Go's database/sql package
2 | //
3 | // Copyright 2019 The Go-MySQL-Driver Authors. All rights reserved.
4 | //
5 | // This Source Code Form is subject to the terms of the Mozilla Public
6 | // License, v. 2.0. If a copy of the MPL was not distributed with this file,
7 | // You can obtain one at http://mozilla.org/MPL/2.0/.
8 |
9 | //go:build !linux && !darwin && !dragonfly && !freebsd && !netbsd && !openbsd && !solaris && !illumos
10 | // +build !linux,!darwin,!dragonfly,!freebsd,!netbsd,!openbsd,!solaris,!illumos
11 |
12 | package mysql
13 |
14 | import "net"
15 |
16 | func connCheck(conn net.Conn) error {
17 | return nil
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/github.com/go-sql-driver/mysql/transaction.go:
--------------------------------------------------------------------------------
1 | // Go MySQL Driver - A MySQL-Driver for Go's database/sql package
2 | //
3 | // Copyright 2012 The Go-MySQL-Driver Authors. All rights reserved.
4 | //
5 | // This Source Code Form is subject to the terms of the Mozilla Public
6 | // License, v. 2.0. If a copy of the MPL was not distributed with this file,
7 | // You can obtain one at http://mozilla.org/MPL/2.0/.
8 |
9 | package mysql
10 |
11 | type mysqlTx struct {
12 | mc *mysqlConn
13 | }
14 |
15 | func (tx *mysqlTx) Commit() (err error) {
16 | if tx.mc == nil || tx.mc.closed.Load() {
17 | return ErrInvalidConn
18 | }
19 | err = tx.mc.exec("COMMIT")
20 | tx.mc = nil
21 | return
22 | }
23 |
24 | func (tx *mysqlTx) Rollback() (err error) {
25 | if tx.mc == nil || tx.mc.closed.Load() {
26 | return ErrInvalidConn
27 | }
28 | err = tx.mc.exec("ROLLBACK")
29 | tx.mc = nil
30 | return
31 | }
32 |
--------------------------------------------------------------------------------
/vendor/github.com/golang-migrate/migrate/v4/.dockerignore:
--------------------------------------------------------------------------------
1 | # Project
2 | FAQ.md
3 | README.md
4 | LICENSE
5 | Makefile
6 | .gitignore
7 | .travis.yml
8 | CONTRIBUTING.md
9 | MIGRATIONS.md
10 | docker-deploy.sh
11 |
12 | # Golang
13 | testing
14 |
--------------------------------------------------------------------------------
/vendor/github.com/golang-migrate/migrate/v4/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | cli/build
3 | cli/cli
4 | cli/migrate
5 | .coverage
6 | .godoc.pid
7 | vendor/
--------------------------------------------------------------------------------
/vendor/github.com/golang-migrate/migrate/v4/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM golang:1.11-alpine3.9 AS downloader
2 | ARG VERSION
3 |
4 | RUN apk add --no-cache git gcc musl-dev
5 |
6 | WORKDIR /go/src/github.com/golang-migrate/migrate
7 |
8 | COPY . ./
9 |
10 | ENV GO111MODULE=on
11 | ENV DATABASES="postgres mysql redshift cassandra spanner cockroachdb clickhouse mongodb"
12 | ENV SOURCES="file go_bindata github aws_s3 google_cloud_storage"
13 |
14 | RUN go build -a -o build/migrate.linux-386 -ldflags="-X main.Version=${VERSION}" -tags "$DATABASES $SOURCES" ./cmd/migrate
15 |
16 | FROM alpine:3.9
17 |
18 | RUN apk add --no-cache ca-certificates
19 |
20 | COPY --from=downloader /go/src/github.com/golang-migrate/migrate/build/migrate.linux-386 /migrate
21 |
22 | ENTRYPOINT ["/migrate"]
23 | CMD ["--help"]
24 |
--------------------------------------------------------------------------------
/vendor/github.com/golang-migrate/migrate/v4/database/error.go:
--------------------------------------------------------------------------------
1 | package database
2 |
3 | import (
4 | "fmt"
5 | )
6 |
7 | // Error should be used for errors involving queries ran against the database
8 | type Error struct {
9 | // Optional: the line number
10 | Line uint
11 |
12 | // Query is a query excerpt
13 | Query []byte
14 |
15 | // Err is a useful/helping error message for humans
16 | Err string
17 |
18 | // OrigErr is the underlying error
19 | OrigErr error
20 | }
21 |
22 | func (e Error) Error() string {
23 | if len(e.Err) == 0 {
24 | return fmt.Sprintf("%v in line %v: %s", e.OrigErr, e.Line, e.Query)
25 | }
26 | return fmt.Sprintf("%v in line %v: %s (details: %v)", e.Err, e.Line, e.Query, e.OrigErr)
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/github.com/golang-migrate/migrate/v4/database/util.go:
--------------------------------------------------------------------------------
1 | package database
2 |
3 | import (
4 | "fmt"
5 | "hash/crc32"
6 | "strings"
7 | )
8 |
9 | const advisoryLockIdSalt uint = 1486364155
10 |
11 | // GenerateAdvisoryLockId inspired by rails migrations, see https://goo.gl/8o9bCT
12 | func GenerateAdvisoryLockId(databaseName string, additionalNames ...string) (string, error) {
13 | if len(additionalNames) > 0 {
14 | databaseName = strings.Join(append(additionalNames, databaseName), "\x00")
15 | }
16 | sum := crc32.ChecksumIEEE([]byte(databaseName))
17 | sum = sum * uint32(advisoryLockIdSalt)
18 | return fmt.Sprintf("%v", sum), nil
19 | }
20 |
--------------------------------------------------------------------------------
/vendor/github.com/golang-migrate/migrate/v4/docker-deploy.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin && \
4 | docker build --build-arg VERSION="$TRAVIS_TAG" . -t migrate/migrate -t migrate/migrate:"$TRAVIS_TAG" && \
5 | docker push migrate/migrate:"$TRAVIS_TAG" && docker push migrate/migrate
6 |
--------------------------------------------------------------------------------
/vendor/github.com/golang-migrate/migrate/v4/log.go:
--------------------------------------------------------------------------------
1 | package migrate
2 |
3 | // Logger is an interface so you can pass in your own
4 | // logging implementation.
5 | type Logger interface {
6 |
7 | // Printf is like fmt.Printf
8 | Printf(format string, v ...interface{})
9 |
10 | // Verbose should return true when verbose logging output is wanted
11 | Verbose() bool
12 | }
13 |
--------------------------------------------------------------------------------
/vendor/github.com/golang-migrate/migrate/v4/source/file/README.md:
--------------------------------------------------------------------------------
1 | # file
2 |
3 | `file:///absolute/path`
4 | `file://relative/path`
5 |
--------------------------------------------------------------------------------
/vendor/github.com/google/uuid/CONTRIBUTORS:
--------------------------------------------------------------------------------
1 | Paul Borman
2 | bmatsuo
3 | shawnps
4 | theory
5 | jboverfelt
6 | dsymonds
7 | cd1
8 | wallclockbuilder
9 | dansouza
10 |
--------------------------------------------------------------------------------
/vendor/github.com/google/uuid/doc.go:
--------------------------------------------------------------------------------
1 | // Copyright 2016 Google Inc. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | // Package uuid generates and inspects UUIDs.
6 | //
7 | // UUIDs are based on RFC 4122 and DCE 1.1: Authentication and Security
8 | // Services.
9 | //
10 | // A UUID is a 16 byte (128 bit) array. UUIDs may be used as keys to
11 | // maps or compared directly.
12 | package uuid
13 |
--------------------------------------------------------------------------------
/vendor/github.com/google/uuid/node_js.go:
--------------------------------------------------------------------------------
1 | // Copyright 2017 Google Inc. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | // +build js
6 |
7 | package uuid
8 |
9 | // getHardwareInterface returns nil values for the JS version of the code.
10 | // This removes the "net" dependency, because it is not used in the browser.
11 | // Using the "net" library inflates the size of the transpiled JS code by 673k bytes.
12 | func getHardwareInterface(name string) (string, []byte) { return "", nil }
13 |
--------------------------------------------------------------------------------
/vendor/github.com/hashicorp/go-multierror/.travis.yml:
--------------------------------------------------------------------------------
1 | sudo: false
2 |
3 | language: go
4 |
5 | go:
6 | - 1.x
7 |
8 | branches:
9 | only:
10 | - master
11 |
12 | script: make test testrace
13 |
--------------------------------------------------------------------------------
/vendor/github.com/hashicorp/go-multierror/flatten.go:
--------------------------------------------------------------------------------
1 | package multierror
2 |
3 | // Flatten flattens the given error, merging any *Errors together into
4 | // a single *Error.
5 | func Flatten(err error) error {
6 | // If it isn't an *Error, just return the error as-is
7 | if _, ok := err.(*Error); !ok {
8 | return err
9 | }
10 |
11 | // Otherwise, make the result and flatten away!
12 | flatErr := new(Error)
13 | flatten(err, flatErr)
14 | return flatErr
15 | }
16 |
17 | func flatten(err error, flatErr *Error) {
18 | switch err := err.(type) {
19 | case *Error:
20 | for _, e := range err.Errors {
21 | flatten(e, flatErr)
22 | }
23 | default:
24 | flatErr.Errors = append(flatErr.Errors, err)
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/github.com/hashicorp/go-multierror/format.go:
--------------------------------------------------------------------------------
1 | package multierror
2 |
3 | import (
4 | "fmt"
5 | "strings"
6 | )
7 |
8 | // ErrorFormatFunc is a function callback that is called by Error to
9 | // turn the list of errors into a string.
10 | type ErrorFormatFunc func([]error) string
11 |
12 | // ListFormatFunc is a basic formatter that outputs the number of errors
13 | // that occurred along with a bullet point list of the errors.
14 | func ListFormatFunc(es []error) string {
15 | if len(es) == 1 {
16 | return fmt.Sprintf("1 error occurred:\n\t* %s\n\n", es[0])
17 | }
18 |
19 | points := make([]string, len(es))
20 | for i, err := range es {
21 | points[i] = fmt.Sprintf("* %s", err)
22 | }
23 |
24 | return fmt.Sprintf(
25 | "%d errors occurred:\n\t%s\n\n",
26 | len(es), strings.Join(points, "\n\t"))
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/github.com/hashicorp/go-multierror/sort.go:
--------------------------------------------------------------------------------
1 | package multierror
2 |
3 | // Len implements sort.Interface function for length
4 | func (err Error) Len() int {
5 | return len(err.Errors)
6 | }
7 |
8 | // Swap implements sort.Interface function for swapping elements
9 | func (err Error) Swap(i, j int) {
10 | err.Errors[i], err.Errors[j] = err.Errors[j], err.Errors[i]
11 | }
12 |
13 | // Less implements sort.Interface function for determining order
14 | func (err Error) Less(i, j int) bool {
15 | return err.Errors[i].Error() < err.Errors[j].Error()
16 | }
17 |
--------------------------------------------------------------------------------
/vendor/github.com/hashicorp/hcl/.gitignore:
--------------------------------------------------------------------------------
1 | y.output
2 |
3 | # ignore intellij files
4 | .idea
5 | *.iml
6 | *.ipr
7 | *.iws
8 |
9 | *.test
10 |
--------------------------------------------------------------------------------
/vendor/github.com/hashicorp/hcl/.travis.yml:
--------------------------------------------------------------------------------
1 | sudo: false
2 |
3 | language: go
4 |
5 | go:
6 | - 1.x
7 | - tip
8 |
9 | branches:
10 | only:
11 | - master
12 |
13 | script: make test
14 |
--------------------------------------------------------------------------------
/vendor/github.com/hashicorp/hcl/Makefile:
--------------------------------------------------------------------------------
1 | TEST?=./...
2 |
3 | default: test
4 |
5 | fmt: generate
6 | go fmt ./...
7 |
8 | test: generate
9 | go get -t ./...
10 | go test $(TEST) $(TESTARGS)
11 |
12 | generate:
13 | go generate ./...
14 |
15 | updatedeps:
16 | go get -u golang.org/x/tools/cmd/stringer
17 |
18 | .PHONY: default generate test updatedeps
19 |
--------------------------------------------------------------------------------
/vendor/github.com/hashicorp/hcl/appveyor.yml:
--------------------------------------------------------------------------------
1 | version: "build-{branch}-{build}"
2 | image: Visual Studio 2015
3 | clone_folder: c:\gopath\src\github.com\hashicorp\hcl
4 | environment:
5 | GOPATH: c:\gopath
6 | init:
7 | - git config --global core.autocrlf false
8 | install:
9 | - cmd: >-
10 | echo %Path%
11 |
12 | go version
13 |
14 | go env
15 |
16 | go get -t ./...
17 |
18 | build_script:
19 | - cmd: go test -v ./...
20 |
--------------------------------------------------------------------------------
/vendor/github.com/hashicorp/hcl/hcl.go:
--------------------------------------------------------------------------------
1 | // Package hcl decodes HCL into usable Go structures.
2 | //
3 | // hcl input can come in either pure HCL format or JSON format.
4 | // It can be parsed into an AST, and then decoded into a structure,
5 | // or it can be decoded directly from a string into a structure.
6 | //
7 | // If you choose to parse HCL into a raw AST, the benefit is that you
8 | // can write custom visitor implementations to implement custom
9 | // semantic checks. By default, HCL does not perform any semantic
10 | // checks.
11 | package hcl
12 |
--------------------------------------------------------------------------------
/vendor/github.com/hashicorp/hcl/hcl/parser/error.go:
--------------------------------------------------------------------------------
1 | package parser
2 |
3 | import (
4 | "fmt"
5 |
6 | "github.com/hashicorp/hcl/hcl/token"
7 | )
8 |
9 | // PosError is a parse error that contains a position.
10 | type PosError struct {
11 | Pos token.Pos
12 | Err error
13 | }
14 |
15 | func (e *PosError) Error() string {
16 | return fmt.Sprintf("At %s: %s", e.Pos, e.Err)
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/github.com/hashicorp/hcl/lex.go:
--------------------------------------------------------------------------------
1 | package hcl
2 |
3 | import (
4 | "unicode"
5 | "unicode/utf8"
6 | )
7 |
8 | type lexModeValue byte
9 |
10 | const (
11 | lexModeUnknown lexModeValue = iota
12 | lexModeHcl
13 | lexModeJson
14 | )
15 |
16 | // lexMode returns whether we're going to be parsing in JSON
17 | // mode or HCL mode.
18 | func lexMode(v []byte) lexModeValue {
19 | var (
20 | r rune
21 | w int
22 | offset int
23 | )
24 |
25 | for {
26 | r, w = utf8.DecodeRune(v[offset:])
27 | offset += w
28 | if unicode.IsSpace(r) {
29 | continue
30 | }
31 | if r == '{' {
32 | return lexModeJson
33 | }
34 | break
35 | }
36 |
37 | return lexModeHcl
38 | }
39 |
--------------------------------------------------------------------------------
/vendor/github.com/im-kulikov/migrate/.gitignore:
--------------------------------------------------------------------------------
1 | # Binaries for programs and plugins
2 | *.exe
3 | *.exe~
4 | *.dll
5 | *.so
6 | *.dylib
7 |
8 | # Test binary, build with `go test -c`
9 | *.test
10 |
11 | # Output of the go coverage tool, specifically when used with LiteIDE
12 | *.out
13 |
14 | vendor
--------------------------------------------------------------------------------
/vendor/github.com/im-kulikov/migrate/README.md:
--------------------------------------------------------------------------------
1 | # Simple PostgreSQL migrator
2 |
3 | [](https://circleci.com/gh/im-kulikov/migrate/tree/master)
4 |
5 | - up / down migrations
6 | - list of applied migrations
7 | - list of planned migrations
8 | - version (number) of latest applied migration
9 | - version (name) of latest applied migration
--------------------------------------------------------------------------------
/vendor/github.com/inconshreveable/mousetrap/trap_others.go:
--------------------------------------------------------------------------------
1 | // +build !windows
2 |
3 | package mousetrap
4 |
5 | // StartedByExplorer returns true if the program was invoked by the user
6 | // double-clicking on the executable from explorer.exe
7 | //
8 | // It is conservative and returns false if any of the internal calls fail.
9 | // It does not guarantee that the program was run from a terminal. It only can tell you
10 | // whether it was launched from explorer.exe
11 | //
12 | // On non-Windows platforms, it always returns false.
13 | func StartedByExplorer() bool {
14 | return false
15 | }
16 |
--------------------------------------------------------------------------------
/vendor/github.com/jinzhu/inflection/wercker.yml:
--------------------------------------------------------------------------------
1 | box: golang
2 |
3 | build:
4 | steps:
5 | - setup-go-workspace
6 |
7 | # Gets the dependencies
8 | - script:
9 | name: go get
10 | code: |
11 | go get
12 |
13 | # Build the project
14 | - script:
15 | name: go build
16 | code: |
17 | go build ./...
18 |
19 | # Test the project
20 | - script:
21 | name: go test
22 | code: |
23 | go test ./...
24 |
--------------------------------------------------------------------------------
/vendor/github.com/jtolds/gls/gen_sym.go:
--------------------------------------------------------------------------------
1 | package gls
2 |
3 | import (
4 | "sync"
5 | )
6 |
7 | var (
8 | keyMtx sync.Mutex
9 | keyCounter uint64
10 | )
11 |
12 | // ContextKey is a throwaway value you can use as a key to a ContextManager
13 | type ContextKey struct{ id uint64 }
14 |
15 | // GenSym will return a brand new, never-before-used ContextKey
16 | func GenSym() ContextKey {
17 | keyMtx.Lock()
18 | defer keyMtx.Unlock()
19 | keyCounter += 1
20 | return ContextKey{id: keyCounter}
21 | }
22 |
--------------------------------------------------------------------------------
/vendor/github.com/jtolds/gls/gid.go:
--------------------------------------------------------------------------------
1 | package gls
2 |
3 | var (
4 | stackTagPool = &idPool{}
5 | )
6 |
7 | // Will return this goroutine's identifier if set. If you always need a
8 | // goroutine identifier, you should use EnsureGoroutineId which will make one
9 | // if there isn't one already.
10 | func GetGoroutineId() (gid uint, ok bool) {
11 | return readStackTag()
12 | }
13 |
14 | // Will call cb with the current goroutine identifier. If one hasn't already
15 | // been generated, one will be created and set first. The goroutine identifier
16 | // might be invalid after cb returns.
17 | func EnsureGoroutineId(cb func(gid uint)) {
18 | if gid, ok := readStackTag(); ok {
19 | cb(gid)
20 | return
21 | }
22 | gid := stackTagPool.Acquire()
23 | defer stackTagPool.Release(gid)
24 | addStackTag(gid, func() { cb(gid) })
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/github.com/jtolds/gls/id_pool.go:
--------------------------------------------------------------------------------
1 | package gls
2 |
3 | // though this could probably be better at keeping ids smaller, the goal of
4 | // this class is to keep a registry of the smallest unique integer ids
5 | // per-process possible
6 |
7 | import (
8 | "sync"
9 | )
10 |
11 | type idPool struct {
12 | mtx sync.Mutex
13 | released []uint
14 | max_id uint
15 | }
16 |
17 | func (p *idPool) Acquire() (id uint) {
18 | p.mtx.Lock()
19 | defer p.mtx.Unlock()
20 | if len(p.released) > 0 {
21 | id = p.released[len(p.released)-1]
22 | p.released = p.released[:len(p.released)-1]
23 | return id
24 | }
25 | id = p.max_id
26 | p.max_id++
27 | return id
28 | }
29 |
30 | func (p *idPool) Release(id uint) {
31 | p.mtx.Lock()
32 | defer p.mtx.Unlock()
33 | p.released = append(p.released, id)
34 | }
35 |
--------------------------------------------------------------------------------
/vendor/github.com/jtolds/gls/stack_tags_main.go:
--------------------------------------------------------------------------------
1 | // +build !js
2 |
3 | package gls
4 |
5 | // This file is used for standard Go builds, which have the expected runtime
6 | // support
7 |
8 | import (
9 | "runtime"
10 | )
11 |
12 | var (
13 | findPtr = func() uintptr {
14 | var pc [1]uintptr
15 | n := runtime.Callers(4, pc[:])
16 | if n != 1 {
17 | panic("failed to find function pointer")
18 | }
19 | return pc[0]
20 | }
21 |
22 | getStack = func(offset, amount int) (stack []uintptr, next_offset int) {
23 | stack = make([]uintptr, amount)
24 | stack = stack[:runtime.Callers(offset, stack)]
25 | if len(stack) < amount {
26 | return stack, 0
27 | }
28 | return stack, offset + len(stack)
29 | }
30 | )
31 |
--------------------------------------------------------------------------------
/vendor/github.com/klauspost/compress/.gitattributes:
--------------------------------------------------------------------------------
1 | * -text
2 | *.bin -text -diff
3 |
--------------------------------------------------------------------------------
/vendor/github.com/klauspost/compress/.gitignore:
--------------------------------------------------------------------------------
1 | # Compiled Object files, Static and Dynamic libs (Shared Objects)
2 | *.o
3 | *.a
4 | *.so
5 |
6 | # Folders
7 | _obj
8 | _test
9 |
10 | # Architecture specific extensions/prefixes
11 | *.[568vq]
12 | [568vq].out
13 |
14 | *.cgo1.go
15 | *.cgo2.c
16 | _cgo_defun.c
17 | _cgo_gotypes.go
18 | _cgo_export.*
19 |
20 | _testmain.go
21 |
22 | *.exe
23 | *.test
24 | *.prof
25 | /s2/cmd/_s2sx/sfx-exe
26 |
27 | # Linux perf files
28 | perf.data
29 | perf.data.old
30 |
31 | # gdb history
32 | .gdb_history
33 |
--------------------------------------------------------------------------------
/vendor/github.com/klauspost/compress/gen.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | cd s2/cmd/_s2sx/ || exit 1
4 | go generate .
5 |
--------------------------------------------------------------------------------
/vendor/github.com/klauspost/compress/huff0/.gitignore:
--------------------------------------------------------------------------------
1 | /huff0-fuzz.zip
2 |
--------------------------------------------------------------------------------
/vendor/github.com/klauspost/compress/internal/cpuinfo/cpuinfo_amd64.go:
--------------------------------------------------------------------------------
1 | //go:build amd64 && !appengine && !noasm && gc
2 | // +build amd64,!appengine,!noasm,gc
3 |
4 | package cpuinfo
5 |
6 | // go:noescape
7 | func x86extensions() (bmi1, bmi2 bool)
8 |
9 | func init() {
10 | hasBMI1, hasBMI2 = x86extensions()
11 | }
12 |
--------------------------------------------------------------------------------
/vendor/github.com/klauspost/compress/internal/cpuinfo/cpuinfo_amd64.s:
--------------------------------------------------------------------------------
1 | // +build !appengine
2 | // +build gc
3 | // +build !noasm
4 |
5 | #include "textflag.h"
6 | #include "funcdata.h"
7 | #include "go_asm.h"
8 |
9 | TEXT ·x86extensions(SB), NOSPLIT, $0
10 | // 1. determine max EAX value
11 | XORQ AX, AX
12 | CPUID
13 |
14 | CMPQ AX, $7
15 | JB unsupported
16 |
17 | // 2. EAX = 7, ECX = 0 --- see Table 3-8 "Information Returned by CPUID Instruction"
18 | MOVQ $7, AX
19 | MOVQ $0, CX
20 | CPUID
21 |
22 | BTQ $3, BX // bit 3 = BMI1
23 | SETCS AL
24 |
25 | BTQ $8, BX // bit 8 = BMI2
26 | SETCS AH
27 |
28 | MOVB AL, bmi1+0(FP)
29 | MOVB AH, bmi2+1(FP)
30 | RET
31 |
32 | unsupported:
33 | XORQ AX, AX
34 | MOVB AL, bmi1+0(FP)
35 | MOVB AL, bmi2+1(FP)
36 | RET
37 |
--------------------------------------------------------------------------------
/vendor/github.com/klauspost/compress/s2sx.mod:
--------------------------------------------------------------------------------
1 | module github.com/klauspost/compress
2 |
3 | go 1.19
4 |
5 |
--------------------------------------------------------------------------------
/vendor/github.com/klauspost/compress/s2sx.sum:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chapsuk/miga/84891fec6b2f8a82b07433d890cdc1cc6b8e2d3e/vendor/github.com/klauspost/compress/s2sx.sum
--------------------------------------------------------------------------------
/vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash_asm.go:
--------------------------------------------------------------------------------
1 | //go:build (amd64 || arm64) && !appengine && gc && !purego && !noasm
2 | // +build amd64 arm64
3 | // +build !appengine
4 | // +build gc
5 | // +build !purego
6 | // +build !noasm
7 |
8 | package xxhash
9 |
10 | // Sum64 computes the 64-bit xxHash digest of b.
11 | //
12 | //go:noescape
13 | func Sum64(b []byte) uint64
14 |
15 | //go:noescape
16 | func writeBlocks(s *Digest, b []byte) int
17 |
--------------------------------------------------------------------------------
/vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash_safe.go:
--------------------------------------------------------------------------------
1 | package xxhash
2 |
3 | // Sum64String computes the 64-bit xxHash digest of s.
4 | func Sum64String(s string) uint64 {
5 | return Sum64([]byte(s))
6 | }
7 |
8 | // WriteString adds more data to d. It always returns len(s), nil.
9 | func (d *Digest) WriteString(s string) (n int, err error) {
10 | return d.Write([]byte(s))
11 | }
12 |
--------------------------------------------------------------------------------
/vendor/github.com/klauspost/compress/zstd/matchlen_amd64.go:
--------------------------------------------------------------------------------
1 | //go:build amd64 && !appengine && !noasm && gc
2 | // +build amd64,!appengine,!noasm,gc
3 |
4 | // Copyright 2019+ Klaus Post. All rights reserved.
5 | // License information can be found in the LICENSE file.
6 |
7 | package zstd
8 |
9 | // matchLen returns how many bytes match in a and b
10 | //
11 | // It assumes that:
12 | //
13 | // len(a) <= len(b) and len(a) > 0
14 | //
15 | //go:noescape
16 | func matchLen(a []byte, b []byte) int
17 |
--------------------------------------------------------------------------------
/vendor/github.com/klauspost/compress/zstd/matchlen_generic.go:
--------------------------------------------------------------------------------
1 | //go:build !amd64 || appengine || !gc || noasm
2 | // +build !amd64 appengine !gc noasm
3 |
4 | // Copyright 2019+ Klaus Post. All rights reserved.
5 | // License information can be found in the LICENSE file.
6 |
7 | package zstd
8 |
9 | import (
10 | "encoding/binary"
11 | "math/bits"
12 | )
13 |
14 | // matchLen returns the maximum common prefix length of a and b.
15 | // a must be the shortest of the two.
16 | func matchLen(a, b []byte) (n int) {
17 | for ; len(a) >= 8 && len(b) >= 8; a, b = a[8:], b[8:] {
18 | diff := binary.LittleEndian.Uint64(a) ^ binary.LittleEndian.Uint64(b)
19 | if diff != 0 {
20 | return n + bits.TrailingZeros64(diff)>>3
21 | }
22 | n += 8
23 | }
24 |
25 | for i := range a {
26 | if a[i] != b[i] {
27 | break
28 | }
29 | n++
30 | }
31 | return n
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/vendor/github.com/lib/pq/.gitignore:
--------------------------------------------------------------------------------
1 | .db
2 | *.test
3 | *~
4 | *.swp
5 | .idea
6 | .vscode
--------------------------------------------------------------------------------
/vendor/github.com/lib/pq/TESTS.md:
--------------------------------------------------------------------------------
1 | # Tests
2 |
3 | ## Running Tests
4 |
5 | `go test` is used for testing. A running PostgreSQL
6 | server is required, with the ability to log in. The
7 | database to connect to test with is "pqgotest," on
8 | "localhost" but these can be overridden using [environment
9 | variables](https://www.postgresql.org/docs/9.3/static/libpq-envars.html).
10 |
11 | Example:
12 |
13 | PGHOST=/run/postgresql go test
14 |
15 | ## Benchmarks
16 |
17 | A benchmark suite can be run as part of the tests:
18 |
19 | go test -bench .
20 |
21 | ## Example setup (Docker)
22 |
23 | Run a postgres container:
24 |
25 | ```
26 | docker run --expose 5432:5432 postgres
27 | ```
28 |
29 | Run tests:
30 |
31 | ```
32 | PGHOST=localhost PGPORT=5432 PGUSER=postgres PGSSLMODE=disable PGDATABASE=postgres go test
33 | ```
34 |
--------------------------------------------------------------------------------
/vendor/github.com/lib/pq/oid/doc.go:
--------------------------------------------------------------------------------
1 | // Package oid contains OID constants
2 | // as defined by the Postgres server.
3 | package oid
4 |
5 | // Oid is a Postgres Object ID.
6 | type Oid uint32
7 |
--------------------------------------------------------------------------------
/vendor/github.com/lib/pq/ssl_windows.go:
--------------------------------------------------------------------------------
1 | //go:build windows
2 | // +build windows
3 |
4 | package pq
5 |
6 | // sslKeyPermissions checks the permissions on user-supplied ssl key files.
7 | // The key file should have very little access.
8 | //
9 | // libpq does not check key file permissions on Windows.
10 | func sslKeyPermissions(string) error { return nil }
11 |
--------------------------------------------------------------------------------
/vendor/github.com/lib/pq/user_other.go:
--------------------------------------------------------------------------------
1 | // Package pq is a pure Go Postgres driver for the database/sql package.
2 |
3 | //go:build js || android || hurd || zos
4 | // +build js android hurd zos
5 |
6 | package pq
7 |
8 | func userCurrent() (string, error) {
9 | return "", ErrCouldNotDetectUsername
10 | }
11 |
--------------------------------------------------------------------------------
/vendor/github.com/lib/pq/user_posix.go:
--------------------------------------------------------------------------------
1 | // Package pq is a pure Go Postgres driver for the database/sql package.
2 |
3 | //go:build aix || darwin || dragonfly || freebsd || (linux && !android) || nacl || netbsd || openbsd || plan9 || solaris || rumprun || illumos
4 | // +build aix darwin dragonfly freebsd linux,!android nacl netbsd openbsd plan9 solaris rumprun illumos
5 |
6 | package pq
7 |
8 | import (
9 | "os"
10 | "os/user"
11 | )
12 |
13 | func userCurrent() (string, error) {
14 | u, err := user.Current()
15 | if err == nil {
16 | return u.Username, nil
17 | }
18 |
19 | name := os.Getenv("USER")
20 | if name != "" {
21 | return name, nil
22 | }
23 |
24 | return "", ErrCouldNotDetectUsername
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/github.com/lib/pq/uuid.go:
--------------------------------------------------------------------------------
1 | package pq
2 |
3 | import (
4 | "encoding/hex"
5 | "fmt"
6 | )
7 |
8 | // decodeUUIDBinary interprets the binary format of a uuid, returning it in text format.
9 | func decodeUUIDBinary(src []byte) ([]byte, error) {
10 | if len(src) != 16 {
11 | return nil, fmt.Errorf("pq: unable to decode uuid; bad length: %d", len(src))
12 | }
13 |
14 | dst := make([]byte, 36)
15 | dst[8], dst[13], dst[18], dst[23] = '-', '-', '-', '-'
16 | hex.Encode(dst[0:], src[0:4])
17 | hex.Encode(dst[9:], src[4:6])
18 | hex.Encode(dst[14:], src[6:8])
19 | hex.Encode(dst[19:], src[8:10])
20 | hex.Encode(dst[24:], src[10:16])
21 |
22 | return dst, nil
23 | }
24 |
--------------------------------------------------------------------------------
/vendor/github.com/magiconair/properties/.gitignore:
--------------------------------------------------------------------------------
1 | *.sublime-project
2 | *.sublime-workspace
3 | *.un~
4 | *.swp
5 | .idea/
6 | *.iml
7 |
--------------------------------------------------------------------------------
/vendor/github.com/paulmach/orb/codecov.yml:
--------------------------------------------------------------------------------
1 | coverage:
2 | status:
3 | project: off
4 | patch: off
5 |
6 | precision: 2
7 | round: down
8 | range: "70...90"
9 |
10 | comment: false
11 |
--------------------------------------------------------------------------------
/vendor/github.com/pelletier/go-toml/.gitignore:
--------------------------------------------------------------------------------
1 | test_program/test_program_bin
2 | fuzz/
3 |
--------------------------------------------------------------------------------
/vendor/github.com/pelletier/go-toml/.travis.yml:
--------------------------------------------------------------------------------
1 | sudo: false
2 | language: go
3 | go:
4 | - 1.8.x
5 | - 1.9.x
6 | - 1.10.x
7 | - tip
8 | matrix:
9 | allow_failures:
10 | - go: tip
11 | fast_finish: true
12 | script:
13 | - if [ -n "$(go fmt ./...)" ]; then exit 1; fi
14 | - ./test.sh
15 | - ./benchmark.sh $TRAVIS_BRANCH https://github.com/$TRAVIS_REPO_SLUG.git
16 | before_install:
17 | - go get github.com/axw/gocov/gocov
18 | - go get github.com/mattn/goveralls
19 | - if ! go get code.google.com/p/go.tools/cmd/cover; then go get golang.org/x/tools/cmd/cover; fi
20 | branches:
21 | only: [master]
22 | after_success:
23 | - $HOME/gopath/bin/goveralls -service=travis-ci -coverprofile=coverage.out -repotoken $COVERALLS_TOKEN
24 |
--------------------------------------------------------------------------------
/vendor/github.com/pelletier/go-toml/doc.go:
--------------------------------------------------------------------------------
1 | // Package toml is a TOML parser and manipulation library.
2 | //
3 | // This version supports the specification as described in
4 | // https://github.com/toml-lang/toml/blob/master/versions/en/toml-v0.4.0.md
5 | //
6 | // Marshaling
7 | //
8 | // Go-toml can marshal and unmarshal TOML documents from and to data
9 | // structures.
10 | //
11 | // TOML document as a tree
12 | //
13 | // Go-toml can operate on a TOML document as a tree. Use one of the Load*
14 | // functions to parse TOML data and obtain a Tree instance, then one of its
15 | // methods to manipulate the tree.
16 | //
17 | // JSONPath-like queries
18 | //
19 | // The package github.com/pelletier/go-toml/query implements a system
20 | // similar to JSONPath to quickly retrieve elements of a TOML document using a
21 | // single expression. See the package documentation for more information.
22 | //
23 | package toml
24 |
--------------------------------------------------------------------------------
/vendor/github.com/pelletier/go-toml/example-crlf.toml:
--------------------------------------------------------------------------------
1 | # This is a TOML document. Boom.
2 |
3 | title = "TOML Example"
4 |
5 | [owner]
6 | name = "Tom Preston-Werner"
7 | organization = "GitHub"
8 | bio = "GitHub Cofounder & CEO\nLikes tater tots and beer."
9 | dob = 1979-05-27T07:32:00Z # First class dates? Why not?
10 |
11 | [database]
12 | server = "192.168.1.1"
13 | ports = [ 8001, 8001, 8002 ]
14 | connection_max = 5000
15 | enabled = true
16 |
17 | [servers]
18 |
19 | # You can indent as you please. Tabs or spaces. TOML don't care.
20 | [servers.alpha]
21 | ip = "10.0.0.1"
22 | dc = "eqdc10"
23 |
24 | [servers.beta]
25 | ip = "10.0.0.2"
26 | dc = "eqdc10"
27 |
28 | [clients]
29 | data = [ ["gamma", "delta"], [1, 2] ] # just an update to make sure parsers support it
30 |
--------------------------------------------------------------------------------
/vendor/github.com/pelletier/go-toml/example.toml:
--------------------------------------------------------------------------------
1 | # This is a TOML document. Boom.
2 |
3 | title = "TOML Example"
4 |
5 | [owner]
6 | name = "Tom Preston-Werner"
7 | organization = "GitHub"
8 | bio = "GitHub Cofounder & CEO\nLikes tater tots and beer."
9 | dob = 1979-05-27T07:32:00Z # First class dates? Why not?
10 |
11 | [database]
12 | server = "192.168.1.1"
13 | ports = [ 8001, 8001, 8002 ]
14 | connection_max = 5000
15 | enabled = true
16 |
17 | [servers]
18 |
19 | # You can indent as you please. Tabs or spaces. TOML don't care.
20 | [servers.alpha]
21 | ip = "10.0.0.1"
22 | dc = "eqdc10"
23 |
24 | [servers.beta]
25 | ip = "10.0.0.2"
26 | dc = "eqdc10"
27 |
28 | [clients]
29 | data = [ ["gamma", "delta"], [1, 2] ] # just an update to make sure parsers support it
30 |
--------------------------------------------------------------------------------
/vendor/github.com/pelletier/go-toml/fuzz.go:
--------------------------------------------------------------------------------
1 | // +build gofuzz
2 |
3 | package toml
4 |
5 | func Fuzz(data []byte) int {
6 | tree, err := LoadBytes(data)
7 | if err != nil {
8 | if tree != nil {
9 | panic("tree must be nil if there is an error")
10 | }
11 | return 0
12 | }
13 |
14 | str, err := tree.ToTomlString()
15 | if err != nil {
16 | if str != "" {
17 | panic(`str must be "" if there is an error`)
18 | }
19 | panic(err)
20 | }
21 |
22 | tree, err = Load(str)
23 | if err != nil {
24 | if tree != nil {
25 | panic("tree must be nil if there is an error")
26 | }
27 | return 0
28 | }
29 |
30 | return 1
31 | }
32 |
--------------------------------------------------------------------------------
/vendor/github.com/pelletier/go-toml/fuzz.sh:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 | set -eu
3 |
4 | go get github.com/dvyukov/go-fuzz/go-fuzz
5 | go get github.com/dvyukov/go-fuzz/go-fuzz-build
6 |
7 | if [ ! -e toml-fuzz.zip ]; then
8 | go-fuzz-build github.com/pelletier/go-toml
9 | fi
10 |
11 | rm -fr fuzz
12 | mkdir -p fuzz/corpus
13 | cp *.toml fuzz/corpus
14 |
15 | go-fuzz -bin=toml-fuzz.zip -workdir=fuzz
16 |
--------------------------------------------------------------------------------
/vendor/github.com/pelletier/go-toml/marshal_test.toml:
--------------------------------------------------------------------------------
1 | title = "TOML Marshal Testing"
2 |
3 | [basic]
4 | bool = true
5 | date = 1979-05-27T07:32:00Z
6 | float = 123.4
7 | int = 5000
8 | string = "Bite me"
9 | uint = 5001
10 |
11 | [basic_lists]
12 | bools = [true,false,true]
13 | dates = [1979-05-27T07:32:00Z,1980-05-27T07:32:00Z]
14 | floats = [12.3,45.6,78.9]
15 | ints = [8001,8001,8002]
16 | strings = ["One","Two","Three"]
17 | uints = [5002,5003]
18 |
19 | [basic_map]
20 | one = "one"
21 | two = "two"
22 |
23 | [subdoc]
24 |
25 | [subdoc.first]
26 | name = "First"
27 |
28 | [subdoc.second]
29 | name = "Second"
30 |
31 | [[subdoclist]]
32 | name = "List.First"
33 |
34 | [[subdoclist]]
35 | name = "List.Second"
36 |
37 | [[subdocptrs]]
38 | name = "Second"
39 |
--------------------------------------------------------------------------------
/vendor/github.com/pelletier/go-toml/position.go:
--------------------------------------------------------------------------------
1 | // Position support for go-toml
2 |
3 | package toml
4 |
5 | import (
6 | "fmt"
7 | )
8 |
9 | // Position of a document element within a TOML document.
10 | //
11 | // Line and Col are both 1-indexed positions for the element's line number and
12 | // column number, respectively. Values of zero or less will cause Invalid(),
13 | // to return true.
14 | type Position struct {
15 | Line int // line within the document
16 | Col int // column within the line
17 | }
18 |
19 | // String representation of the position.
20 | // Displays 1-indexed line and column numbers.
21 | func (p Position) String() string {
22 | return fmt.Sprintf("(%d, %d)", p.Line, p.Col)
23 | }
24 |
25 | // Invalid returns whether or not the position is valid (i.e. with negative or
26 | // null values)
27 | func (p Position) Invalid() bool {
28 | return p.Line <= 0 || p.Col <= 0
29 | }
30 |
--------------------------------------------------------------------------------
/vendor/github.com/pierrec/lz4/v4/.gitignore:
--------------------------------------------------------------------------------
1 | # Created by https://www.gitignore.io/api/macos
2 |
3 | ### macOS ###
4 | *.DS_Store
5 | .AppleDouble
6 | .LSOverride
7 |
8 | # Icon must end with two \r
9 | Icon
10 |
11 |
12 | # Thumbnails
13 | ._*
14 |
15 | # Files that might appear in the root of a volume
16 | .DocumentRevisions-V100
17 | .fseventsd
18 | .Spotlight-V100
19 | .TemporaryItems
20 | .Trashes
21 | .VolumeIcon.icns
22 | .com.apple.timemachine.donotpresent
23 |
24 | # Directories potentially created on remote AFP share
25 | .AppleDB
26 | .AppleDesktop
27 | Network Trash Folder
28 | Temporary Items
29 | .apdisk
30 |
31 | # End of https://www.gitignore.io/api/macos
32 |
33 | cmd/*/*exe
34 | .idea
35 |
36 | fuzz/*.zip
37 |
--------------------------------------------------------------------------------
/vendor/github.com/pierrec/lz4/v4/internal/lz4block/decode_asm.go:
--------------------------------------------------------------------------------
1 | //go:build (amd64 || arm || arm64) && !appengine && gc && !noasm
2 | // +build amd64 arm arm64
3 | // +build !appengine
4 | // +build gc
5 | // +build !noasm
6 |
7 | package lz4block
8 |
9 | //go:noescape
10 | func decodeBlock(dst, src, dict []byte) int
11 |
--------------------------------------------------------------------------------
/vendor/github.com/pierrec/lz4/v4/internal/xxh32/xxh32zero_arm.go:
--------------------------------------------------------------------------------
1 | // +build !noasm
2 |
3 | package xxh32
4 |
5 | // ChecksumZero returns the 32-bit hash of input.
6 | //
7 | //go:noescape
8 | func ChecksumZero(input []byte) uint32
9 |
10 | //go:noescape
11 | func update(v *[4]uint32, buf *[16]byte, input []byte)
12 |
--------------------------------------------------------------------------------
/vendor/github.com/pierrec/lz4/v4/internal/xxh32/xxh32zero_other.go:
--------------------------------------------------------------------------------
1 | // +build !arm noasm
2 |
3 | package xxh32
4 |
5 | // ChecksumZero returns the 32-bit hash of input.
6 | func ChecksumZero(input []byte) uint32 { return checksumZeroGo(input) }
7 |
8 | func update(v *[4]uint32, buf *[16]byte, input []byte) {
9 | updateGo(v, buf, input)
10 | }
11 |
--------------------------------------------------------------------------------
/vendor/github.com/pierrec/lz4/v4/state_gen.go:
--------------------------------------------------------------------------------
1 | // Code generated by "stringer -type=aState -output state_gen.go"; DO NOT EDIT.
2 |
3 | package lz4
4 |
5 | import "strconv"
6 |
7 | func _() {
8 | // An "invalid array index" compiler error signifies that the constant values have changed.
9 | // Re-run the stringer command to generate them again.
10 | var x [1]struct{}
11 | _ = x[noState-0]
12 | _ = x[errorState-1]
13 | _ = x[newState-2]
14 | _ = x[readState-3]
15 | _ = x[writeState-4]
16 | _ = x[closedState-5]
17 | }
18 |
19 | const _aState_name = "noStateerrorStatenewStatereadStatewriteStateclosedState"
20 |
21 | var _aState_index = [...]uint8{0, 7, 17, 25, 34, 44, 55}
22 |
23 | func (i aState) String() string {
24 | if i >= aState(len(_aState_index)-1) {
25 | return "aState(" + strconv.FormatInt(int64(i), 10) + ")"
26 | }
27 | return _aState_name[_aState_index[i]:_aState_index[i+1]]
28 | }
29 |
--------------------------------------------------------------------------------
/vendor/github.com/pkg/errors/.gitignore:
--------------------------------------------------------------------------------
1 | # Compiled Object files, Static and Dynamic libs (Shared Objects)
2 | *.o
3 | *.a
4 | *.so
5 |
6 | # Folders
7 | _obj
8 | _test
9 |
10 | # Architecture specific extensions/prefixes
11 | *.[568vq]
12 | [568vq].out
13 |
14 | *.cgo1.go
15 | *.cgo2.c
16 | _cgo_defun.c
17 | _cgo_gotypes.go
18 | _cgo_export.*
19 |
20 | _testmain.go
21 |
22 | *.exe
23 | *.test
24 | *.prof
25 |
--------------------------------------------------------------------------------
/vendor/github.com/pkg/errors/.travis.yml:
--------------------------------------------------------------------------------
1 | language: go
2 | go_import_path: github.com/pkg/errors
3 | go:
4 | - 1.11.x
5 | - 1.12.x
6 | - 1.13.x
7 | - tip
8 |
9 | script:
10 | - make check
11 |
--------------------------------------------------------------------------------
/vendor/github.com/pkg/errors/appveyor.yml:
--------------------------------------------------------------------------------
1 | version: build-{build}.{branch}
2 |
3 | clone_folder: C:\gopath\src\github.com\pkg\errors
4 | shallow_clone: true # for startup speed
5 |
6 | environment:
7 | GOPATH: C:\gopath
8 |
9 | platform:
10 | - x64
11 |
12 | # http://www.appveyor.com/docs/installed-software
13 | install:
14 | # some helpful output for debugging builds
15 | - go version
16 | - go env
17 | # pre-installed MinGW at C:\MinGW is 32bit only
18 | # but MSYS2 at C:\msys64 has mingw64
19 | - set PATH=C:\msys64\mingw64\bin;%PATH%
20 | - gcc --version
21 | - g++ --version
22 |
23 | build_script:
24 | - go install -v ./...
25 |
26 | test_script:
27 | - set PATH=C:\gopath\bin;%PATH%
28 | - go test -v ./...
29 |
30 | #artifacts:
31 | # - path: '%GOPATH%\bin\*.exe'
32 | deploy: off
33 |
--------------------------------------------------------------------------------
/vendor/github.com/pressly/goose/v3/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | .vscode
3 | .DS_Store
4 | *.swp
5 | *.test
6 |
7 | # Files output by tests
8 | /bin
9 |
10 | # Local testing
11 | .envrc
12 | *.FAIL
13 |
14 | dist/
15 | release_notes.txt
16 |
17 | go.work
18 | go.work.sum
19 |
--------------------------------------------------------------------------------
/vendor/github.com/pressly/goose/v3/database/doc.go:
--------------------------------------------------------------------------------
1 | // Package database defines a generic [Store] interface for goose to use when interacting with the
2 | // database. It is meant to be generic and not tied to any specific database technology.
3 | //
4 | // At a high level, a [Store] is responsible for:
5 | // - Creating a version table
6 | // - Inserting and deleting a version
7 | // - Getting a specific version
8 | // - Listing all applied versions
9 | //
10 | // Use the [NewStore] function to create a [Store] for one of the supported dialects.
11 | //
12 | // For more advanced use cases, it's possible to implement a custom [Store] for a database that
13 | // goose does not support.
14 | package database
15 |
--------------------------------------------------------------------------------
/vendor/github.com/pressly/goose/v3/database/sql_extended.go:
--------------------------------------------------------------------------------
1 | package database
2 |
3 | import (
4 | "context"
5 | "database/sql"
6 | )
7 |
8 | // DBTxConn is a thin interface for common methods that is satisfied by *sql.DB, *sql.Tx and
9 | // *sql.Conn.
10 | //
11 | // There is a long outstanding issue to formalize a std lib interface, but alas. See:
12 | // https://github.com/golang/go/issues/14468
13 | type DBTxConn interface {
14 | ExecContext(ctx context.Context, query string, args ...any) (sql.Result, error)
15 | QueryContext(ctx context.Context, query string, args ...any) (*sql.Rows, error)
16 | QueryRowContext(ctx context.Context, query string, args ...any) *sql.Row
17 | }
18 |
19 | var (
20 | _ DBTxConn = (*sql.DB)(nil)
21 | _ DBTxConn = (*sql.Tx)(nil)
22 | _ DBTxConn = (*sql.Conn)(nil)
23 | )
24 |
--------------------------------------------------------------------------------
/vendor/github.com/pressly/goose/v3/internal/dialect/dialectquery/turso.go:
--------------------------------------------------------------------------------
1 | package dialectquery
2 |
3 | type Turso struct {
4 | Sqlite3
5 | }
6 |
7 | var _ Querier = (*Turso)(nil)
8 |
--------------------------------------------------------------------------------
/vendor/github.com/pressly/goose/v3/internal/dialect/dialects.go:
--------------------------------------------------------------------------------
1 | package dialect
2 |
3 | // Dialect is the type of database dialect.
4 | type Dialect string
5 |
6 | const (
7 | Postgres Dialect = "postgres"
8 | Mysql Dialect = "mysql"
9 | Sqlite3 Dialect = "sqlite3"
10 | Sqlserver Dialect = "sqlserver"
11 | Redshift Dialect = "redshift"
12 | Tidb Dialect = "tidb"
13 | Clickhouse Dialect = "clickhouse"
14 | ClickhouseReplicated Dialect = "clickhouse-replicated"
15 | Vertica Dialect = "vertica"
16 | Ydb Dialect = "ydb"
17 | Turso Dialect = "turso"
18 | Starrocks Dialect = "starrocks"
19 | )
20 |
--------------------------------------------------------------------------------
/vendor/github.com/prometheus/procfs/.gitignore:
--------------------------------------------------------------------------------
1 | /testdata/fixtures/
2 | /fixtures
3 |
--------------------------------------------------------------------------------
/vendor/github.com/prometheus/procfs/.golangci.yml:
--------------------------------------------------------------------------------
1 | ---
2 | linters:
3 | enable:
4 | - godot
5 | - misspell
6 | - revive
7 |
8 | linter-settings:
9 | godot:
10 | capital: true
11 | exclude:
12 | # Ignore "See: URL"
13 | - 'See:'
14 | misspell:
15 | locale: US
16 |
--------------------------------------------------------------------------------
/vendor/github.com/prometheus/procfs/CODE_OF_CONDUCT.md:
--------------------------------------------------------------------------------
1 | # Prometheus Community Code of Conduct
2 |
3 | Prometheus follows the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/main/code-of-conduct.md).
4 |
--------------------------------------------------------------------------------
/vendor/github.com/prometheus/procfs/MAINTAINERS.md:
--------------------------------------------------------------------------------
1 | * Johannes 'fish' Ziemke @discordianfish
2 | * Paul Gier @pgier
3 |
--------------------------------------------------------------------------------
/vendor/github.com/prometheus/procfs/NOTICE:
--------------------------------------------------------------------------------
1 | procfs provides functions to retrieve system, kernel and process
2 | metrics from the pseudo-filesystem proc.
3 |
4 | Copyright 2014-2015 The Prometheus Authors
5 |
6 | This product includes software developed at
7 | SoundCloud Ltd. (http://soundcloud.com/).
8 |
--------------------------------------------------------------------------------
/vendor/github.com/prometheus/procfs/SECURITY.md:
--------------------------------------------------------------------------------
1 | # Reporting a security issue
2 |
3 | The Prometheus security policy, including how to report vulnerabilities, can be
4 | found here:
5 |
6 |
7 |
--------------------------------------------------------------------------------
/vendor/github.com/prometheus/procfs/cpuinfo_armx.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Prometheus Authors
2 | // Licensed under the Apache License, Version 2.0 (the "License");
3 | // you may not use this file except in compliance with the License.
4 | // You may obtain a copy of the License at
5 | //
6 | // http://www.apache.org/licenses/LICENSE-2.0
7 | //
8 | // Unless required by applicable law or agreed to in writing, software
9 | // distributed under the License is distributed on an "AS IS" BASIS,
10 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | // See the License for the specific language governing permissions and
12 | // limitations under the License.
13 |
14 | //go:build linux && (arm || arm64)
15 | // +build linux
16 | // +build arm arm64
17 |
18 | package procfs
19 |
20 | var parseCPUInfo = parseCPUInfoARM
21 |
--------------------------------------------------------------------------------
/vendor/github.com/prometheus/procfs/cpuinfo_loong64.go:
--------------------------------------------------------------------------------
1 | // Copyright 2022 The Prometheus Authors
2 | // Licensed under the Apache License, Version 2.0 (the "License");
3 | // you may not use this file except in compliance with the License.
4 | // You may obtain a copy of the License at
5 | //
6 | // http://www.apache.org/licenses/LICENSE-2.0
7 | //
8 | // Unless required by applicable law or agreed to in writing, software
9 | // distributed under the License is distributed on an "AS IS" BASIS,
10 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | // See the License for the specific language governing permissions and
12 | // limitations under the License.
13 |
14 | //go:build linux
15 | // +build linux
16 |
17 | package procfs
18 |
19 | var parseCPUInfo = parseCPUInfoLoong
20 |
--------------------------------------------------------------------------------
/vendor/github.com/prometheus/procfs/cpuinfo_mipsx.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Prometheus Authors
2 | // Licensed under the Apache License, Version 2.0 (the "License");
3 | // you may not use this file except in compliance with the License.
4 | // You may obtain a copy of the License at
5 | //
6 | // http://www.apache.org/licenses/LICENSE-2.0
7 | //
8 | // Unless required by applicable law or agreed to in writing, software
9 | // distributed under the License is distributed on an "AS IS" BASIS,
10 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | // See the License for the specific language governing permissions and
12 | // limitations under the License.
13 |
14 | //go:build linux && (mips || mipsle || mips64 || mips64le)
15 | // +build linux
16 | // +build mips mipsle mips64 mips64le
17 |
18 | package procfs
19 |
20 | var parseCPUInfo = parseCPUInfoMips
21 |
--------------------------------------------------------------------------------
/vendor/github.com/prometheus/procfs/cpuinfo_ppcx.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Prometheus Authors
2 | // Licensed under the Apache License, Version 2.0 (the "License");
3 | // you may not use this file except in compliance with the License.
4 | // You may obtain a copy of the License at
5 | //
6 | // http://www.apache.org/licenses/LICENSE-2.0
7 | //
8 | // Unless required by applicable law or agreed to in writing, software
9 | // distributed under the License is distributed on an "AS IS" BASIS,
10 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | // See the License for the specific language governing permissions and
12 | // limitations under the License.
13 |
14 | //go:build linux && (ppc64 || ppc64le)
15 | // +build linux
16 | // +build ppc64 ppc64le
17 |
18 | package procfs
19 |
20 | var parseCPUInfo = parseCPUInfoPPC
21 |
--------------------------------------------------------------------------------
/vendor/github.com/prometheus/procfs/cpuinfo_riscvx.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Prometheus Authors
2 | // Licensed under the Apache License, Version 2.0 (the "License");
3 | // you may not use this file except in compliance with the License.
4 | // You may obtain a copy of the License at
5 | //
6 | // http://www.apache.org/licenses/LICENSE-2.0
7 | //
8 | // Unless required by applicable law or agreed to in writing, software
9 | // distributed under the License is distributed on an "AS IS" BASIS,
10 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | // See the License for the specific language governing permissions and
12 | // limitations under the License.
13 |
14 | //go:build linux && (riscv || riscv64)
15 | // +build linux
16 | // +build riscv riscv64
17 |
18 | package procfs
19 |
20 | var parseCPUInfo = parseCPUInfoRISCV
21 |
--------------------------------------------------------------------------------
/vendor/github.com/prometheus/procfs/cpuinfo_s390x.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Prometheus Authors
2 | // Licensed under the Apache License, Version 2.0 (the "License");
3 | // you may not use this file except in compliance with the License.
4 | // You may obtain a copy of the License at
5 | //
6 | // http://www.apache.org/licenses/LICENSE-2.0
7 | //
8 | // Unless required by applicable law or agreed to in writing, software
9 | // distributed under the License is distributed on an "AS IS" BASIS,
10 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | // See the License for the specific language governing permissions and
12 | // limitations under the License.
13 |
14 | //go:build linux
15 | // +build linux
16 |
17 | package procfs
18 |
19 | var parseCPUInfo = parseCPUInfoS390X
20 |
--------------------------------------------------------------------------------
/vendor/github.com/prometheus/procfs/cpuinfo_x86.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Prometheus Authors
2 | // Licensed under the Apache License, Version 2.0 (the "License");
3 | // you may not use this file except in compliance with the License.
4 | // You may obtain a copy of the License at
5 | //
6 | // http://www.apache.org/licenses/LICENSE-2.0
7 | //
8 | // Unless required by applicable law or agreed to in writing, software
9 | // distributed under the License is distributed on an "AS IS" BASIS,
10 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | // See the License for the specific language governing permissions and
12 | // limitations under the License.
13 |
14 | //go:build linux && (386 || amd64)
15 | // +build linux
16 | // +build 386 amd64
17 |
18 | package procfs
19 |
20 | var parseCPUInfo = parseCPUInfoX86
21 |
--------------------------------------------------------------------------------
/vendor/github.com/segmentio/asm/bswap/swap64.go:
--------------------------------------------------------------------------------
1 | package bswap
2 |
3 | import _ "github.com/segmentio/asm/cpu"
4 |
5 | // Swap64 performs an in-place byte swap on each 64 bits elements in b.
6 | //
7 | // This function is useful when dealing with big-endian input; by converting it
8 | // to little-endian, the data can then be compared using native CPU instructions
9 | // instead of having to employ often slower byte comparison algorithms.
10 | func Swap64(b []byte) {
11 | if len(b)%8 != 0 {
12 | panic("swap64 expects the input to contain full 64 bits elements")
13 | }
14 | swap64(b)
15 | }
16 |
--------------------------------------------------------------------------------
/vendor/github.com/segmentio/asm/bswap/swap64_amd64.go:
--------------------------------------------------------------------------------
1 | // Code generated by command: go run swap64_asm.go -pkg bswap -out ../bswap/swap64_amd64.s -stubs ../bswap/swap64_amd64.go. DO NOT EDIT.
2 |
3 | //go:build !purego
4 |
5 | package bswap
6 |
7 | // swap64 performs an in-place byte swap on each qword of the input buffer.
8 | func swap64(b []byte)
9 |
--------------------------------------------------------------------------------
/vendor/github.com/segmentio/asm/bswap/swap64_default.go:
--------------------------------------------------------------------------------
1 | //go:build purego || !amd64
2 | // +build purego !amd64
3 |
4 | package bswap
5 |
6 | import "encoding/binary"
7 |
8 | func swap64(b []byte) {
9 | for i := 0; i < len(b); i += 8 {
10 | u := binary.BigEndian.Uint64(b[i:])
11 | binary.LittleEndian.PutUint64(b[i:], u)
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/vendor/github.com/segmentio/asm/cpu/cpu.go:
--------------------------------------------------------------------------------
1 | // Pakage cpu provides APIs to detect CPU features available at runtime.
2 | package cpu
3 |
4 | import (
5 | "github.com/segmentio/asm/cpu/arm"
6 | "github.com/segmentio/asm/cpu/arm64"
7 | "github.com/segmentio/asm/cpu/x86"
8 | )
9 |
10 | var (
11 | // X86 is the bitset representing the set of the x86 instruction sets are
12 | // supported by the CPU.
13 | X86 = x86.ABI()
14 |
15 | // ARM is the bitset representing which parts of the arm instruction sets
16 | // are supported by the CPU.
17 | ARM = arm.ABI()
18 |
19 | // ARM64 is the bitset representing which parts of the arm64 instruction
20 | // sets are supported by the CPU.
21 | ARM64 = arm64.ABI()
22 | )
23 |
--------------------------------------------------------------------------------
/vendor/github.com/sethvargo/go-retry/backoff_constant.go:
--------------------------------------------------------------------------------
1 | package retry
2 |
3 | import (
4 | "context"
5 | "time"
6 | )
7 |
8 | // Constant is a wrapper around Retry that uses a constant backoff. It panics if
9 | // the given base is less than zero.
10 | func Constant(ctx context.Context, t time.Duration, f RetryFunc) error {
11 | return Do(ctx, NewConstant(t), f)
12 | }
13 |
14 | // NewConstant creates a new constant backoff using the value t. The wait time
15 | // is the provided constant value. It panics if the given base is less than
16 | // zero.
17 | func NewConstant(t time.Duration) Backoff {
18 | if t <= 0 {
19 | panic("t must be greater than 0")
20 | }
21 |
22 | return BackoffFunc(func() (time.Duration, bool) {
23 | return t, false
24 | })
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/github.com/shopspring/decimal/.gitignore:
--------------------------------------------------------------------------------
1 | .git
2 | *.swp
3 |
4 | # IntelliJ
5 | .idea/
6 | *.iml
7 |
8 | # VS code
9 | *.code-workspace
10 |
--------------------------------------------------------------------------------
/vendor/github.com/smartystreets/assertions/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | Thumbs.db
3 | *.iml
4 | /.idea
5 | coverage.out
6 |
--------------------------------------------------------------------------------
/vendor/github.com/smartystreets/assertions/.travis.yml:
--------------------------------------------------------------------------------
1 | language: go
2 |
3 | go:
4 | - 1.x
5 |
6 | install:
7 | - go get -t ./...
8 |
9 | script: go test ./... -v
10 |
11 | sudo: false
12 |
--------------------------------------------------------------------------------
/vendor/github.com/smartystreets/assertions/internal/go-render/render/render_time.go:
--------------------------------------------------------------------------------
1 | package render
2 |
3 | import (
4 | "reflect"
5 | "time"
6 | )
7 |
8 | func renderTime(value reflect.Value) (string, bool) {
9 | if instant, ok := convertTime(value); !ok {
10 | return "", false
11 | } else if instant.IsZero() {
12 | return "0", true
13 | } else {
14 | return instant.String(), true
15 | }
16 | }
17 |
18 | func convertTime(value reflect.Value) (t time.Time, ok bool) {
19 | if value.Type() == timeType {
20 | defer func() { recover() }()
21 | t, ok = value.Interface().(time.Time)
22 | }
23 | return
24 | }
25 |
26 | var timeType = reflect.TypeOf(time.Time{})
27 |
--------------------------------------------------------------------------------
/vendor/github.com/smartystreets/assertions/internal/oglematchers/.gitignore:
--------------------------------------------------------------------------------
1 | *.6
2 | 6.out
3 | _obj/
4 | _test/
5 | _testmain.go
6 |
--------------------------------------------------------------------------------
/vendor/github.com/smartystreets/assertions/internal/oglematchers/.travis.yml:
--------------------------------------------------------------------------------
1 | # Cf. http://docs.travis-ci.com/user/getting-started/
2 | # Cf. http://docs.travis-ci.com/user/languages/go/
3 |
4 | language: go
5 |
--------------------------------------------------------------------------------
/vendor/github.com/smartystreets/goconvey/convey/convey.goconvey:
--------------------------------------------------------------------------------
1 | #ignore
2 | -timeout=1s
3 | #-covermode=count
4 | #-coverpkg=github.com/smartystreets/goconvey/convey,github.com/smartystreets/goconvey/convey/gotest,github.com/smartystreets/goconvey/convey/reporting
--------------------------------------------------------------------------------
/vendor/github.com/smartystreets/goconvey/convey/nilReporter.go:
--------------------------------------------------------------------------------
1 | package convey
2 |
3 | import (
4 | "github.com/smartystreets/goconvey/convey/reporting"
5 | )
6 |
7 | type nilReporter struct{}
8 |
9 | func (self *nilReporter) BeginStory(story *reporting.StoryReport) {}
10 | func (self *nilReporter) Enter(scope *reporting.ScopeReport) {}
11 | func (self *nilReporter) Report(report *reporting.AssertionResult) {}
12 | func (self *nilReporter) Exit() {}
13 | func (self *nilReporter) EndStory() {}
14 | func (self *nilReporter) Write(p []byte) (int, error) { return len(p), nil }
15 | func newNilReporter() *nilReporter { return &nilReporter{} }
16 |
--------------------------------------------------------------------------------
/vendor/github.com/smartystreets/goconvey/convey/reporting/console.go:
--------------------------------------------------------------------------------
1 | package reporting
2 |
3 | import (
4 | "fmt"
5 | "io"
6 | )
7 |
8 | type console struct{}
9 |
10 | func (self *console) Write(p []byte) (n int, err error) {
11 | return fmt.Print(string(p))
12 | }
13 |
14 | func NewConsole() io.Writer {
15 | return new(console)
16 | }
17 |
--------------------------------------------------------------------------------
/vendor/github.com/smartystreets/goconvey/convey/reporting/doc.go:
--------------------------------------------------------------------------------
1 | // Package reporting contains internal functionality related
2 | // to console reporting and output. Although this package has
3 | // exported names is not intended for public consumption. See the
4 | // examples package for how to use this project.
5 | package reporting
6 |
--------------------------------------------------------------------------------
/vendor/github.com/smartystreets/goconvey/convey/reporting/gotest.go:
--------------------------------------------------------------------------------
1 | package reporting
2 |
3 | type gotestReporter struct{ test T }
4 |
5 | func (self *gotestReporter) BeginStory(story *StoryReport) {
6 | self.test = story.Test
7 | }
8 |
9 | func (self *gotestReporter) Enter(scope *ScopeReport) {}
10 |
11 | func (self *gotestReporter) Report(r *AssertionResult) {
12 | if !passed(r) {
13 | self.test.Fail()
14 | }
15 | }
16 |
17 | func (self *gotestReporter) Exit() {}
18 |
19 | func (self *gotestReporter) EndStory() {
20 | self.test = nil
21 | }
22 |
23 | func (self *gotestReporter) Write(content []byte) (written int, err error) {
24 | return len(content), nil // no-op
25 | }
26 |
27 | func NewGoTestReporter() *gotestReporter {
28 | return new(gotestReporter)
29 | }
30 |
31 | func passed(r *AssertionResult) bool {
32 | return r.Error == nil && r.Failure == ""
33 | }
34 |
--------------------------------------------------------------------------------
/vendor/github.com/smartystreets/goconvey/convey/reporting/reporting.goconvey:
--------------------------------------------------------------------------------
1 | #ignore
2 | -timeout=1s
3 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/afero/.travis.yml:
--------------------------------------------------------------------------------
1 | sudo: false
2 | language: go
3 |
4 | go:
5 | - 1.9
6 | - "1.10"
7 | - tip
8 |
9 | os:
10 | - linux
11 | - osx
12 |
13 | matrix:
14 | allow_failures:
15 | - go: tip
16 | fast_finish: true
17 |
18 | script:
19 | - go build
20 | - go test -race -v ./...
21 |
22 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/afero/appveyor.yml:
--------------------------------------------------------------------------------
1 | version: '{build}'
2 | clone_folder: C:\gopath\src\github.com\spf13\afero
3 | environment:
4 | GOPATH: C:\gopath
5 | build_script:
6 | - cmd: >-
7 | go version
8 |
9 | go env
10 |
11 | go get -v github.com/spf13/afero/...
12 |
13 | go build github.com/spf13/afero
14 | test_script:
15 | - cmd: go test -race -v github.com/spf13/afero/...
16 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/afero/const_bsds.go:
--------------------------------------------------------------------------------
1 | // Copyright © 2016 Steve Francia .
2 | //
3 | // Licensed under the Apache License, Version 2.0 (the "License");
4 | // you may not use this file except in compliance with the License.
5 | // You may obtain a copy of the License at
6 | // http://www.apache.org/licenses/LICENSE-2.0
7 | //
8 | // Unless required by applicable law or agreed to in writing, software
9 | // distributed under the License is distributed on an "AS IS" BASIS,
10 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | // See the License for the specific language governing permissions and
12 | // limitations under the License.
13 |
14 | // +build darwin openbsd freebsd netbsd dragonfly
15 |
16 | package afero
17 |
18 | import (
19 | "syscall"
20 | )
21 |
22 | const BADFD = syscall.EBADF
23 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/afero/const_win_unix.go:
--------------------------------------------------------------------------------
1 | // Copyright © 2016 Steve Francia .
2 | //
3 | // Licensed under the Apache License, Version 2.0 (the "License");
4 | // you may not use this file except in compliance with the License.
5 | // You may obtain a copy of the License at
6 | // http://www.apache.org/licenses/LICENSE-2.0
7 | //
8 | // Unless required by applicable law or agreed to in writing, software
9 | // distributed under the License is distributed on an "AS IS" BASIS,
10 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 | // See the License for the specific language governing permissions and
12 | // limitations under the License.
13 | // +build !darwin
14 | // +build !openbsd
15 | // +build !freebsd
16 | // +build !dragonfly
17 | // +build !netbsd
18 |
19 | package afero
20 |
21 | import (
22 | "syscall"
23 | )
24 |
25 | const BADFD = syscall.EBADFD
26 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/cast/.gitignore:
--------------------------------------------------------------------------------
1 | # Compiled Object files, Static and Dynamic libs (Shared Objects)
2 | *.o
3 | *.a
4 | *.so
5 |
6 | # Folders
7 | _obj
8 | _test
9 |
10 | # Architecture specific extensions/prefixes
11 | *.[568vq]
12 | [568vq].out
13 |
14 | *.cgo1.go
15 | *.cgo2.c
16 | _cgo_defun.c
17 | _cgo_gotypes.go
18 | _cgo_export.*
19 |
20 | _testmain.go
21 |
22 | *.exe
23 | *.test
24 |
25 | *.bench
26 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/cast/.travis.yml:
--------------------------------------------------------------------------------
1 | language: go
2 | env:
3 | - GO111MODULE=on
4 | sudo: required
5 | go:
6 | - "1.11.x"
7 | - tip
8 | os:
9 | - linux
10 | matrix:
11 | allow_failures:
12 | - go: tip
13 | fast_finish: true
14 | script:
15 | - make check
16 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/cobra/.gitignore:
--------------------------------------------------------------------------------
1 | # Compiled Object files, Static and Dynamic libs (Shared Objects)
2 | *.o
3 | *.a
4 | *.so
5 |
6 | # Folders
7 | _obj
8 | _test
9 |
10 | # Architecture specific extensions/prefixes
11 | *.[568vq]
12 | [568vq].out
13 |
14 | *.cgo1.go
15 | *.cgo2.c
16 | _cgo_defun.c
17 | _cgo_gotypes.go
18 | _cgo_export.*
19 |
20 | _testmain.go
21 |
22 | # Vim files https://github.com/github/gitignore/blob/master/Global/Vim.gitignore
23 | # swap
24 | [._]*.s[a-w][a-z]
25 | [._]s[a-w][a-z]
26 | # session
27 | Session.vim
28 | # temporary
29 | .netrwhist
30 | *~
31 | # auto-generated tag files
32 | tags
33 |
34 | *.exe
35 | cobra.test
36 | bin
37 |
38 | .idea/
39 | *.iml
40 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/cobra/.mailmap:
--------------------------------------------------------------------------------
1 | Steve Francia
2 | Bjørn Erik Pedersen
3 | Fabiano Franz
4 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/cobra/MAINTAINERS:
--------------------------------------------------------------------------------
1 | maintainers:
2 | - spf13
3 | - johnSchnake
4 | - jpmcb
5 | - marckhouzam
6 | inactive:
7 | - anthonyfok
8 | - bep
9 | - bogem
10 | - broady
11 | - eparis
12 | - jharshman
13 | - wfernandes
14 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/cobra/command_notwin.go:
--------------------------------------------------------------------------------
1 | // Copyright 2013-2022 The Cobra Authors
2 | //
3 | // Licensed under the Apache License, Version 2.0 (the "License");
4 | // you may not use this file except in compliance with the License.
5 | // You may obtain a copy of the License at
6 | //
7 | // http://www.apache.org/licenses/LICENSE-2.0
8 | //
9 | // Unless required by applicable law or agreed to in writing, software
10 | // distributed under the License is distributed on an "AS IS" BASIS,
11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | // See the License for the specific language governing permissions and
13 | // limitations under the License.
14 |
15 | //go:build !windows
16 | // +build !windows
17 |
18 | package cobra
19 |
20 | var preExecHookFn func(*Command)
21 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/cobra/fish_completions.md:
--------------------------------------------------------------------------------
1 | ## Generating Fish Completions For Your cobra.Command
2 |
3 | Please refer to [Shell Completions](shell_completions.md) for details.
4 |
5 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/cobra/powershell_completions.md:
--------------------------------------------------------------------------------
1 | # Generating PowerShell Completions For Your Own cobra.Command
2 |
3 | Please refer to [Shell Completions](shell_completions.md#powershell-completions) for details.
4 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/jwalterweatherman/.gitignore:
--------------------------------------------------------------------------------
1 | # Compiled Object files, Static and Dynamic libs (Shared Objects)
2 | *.o
3 | *.a
4 | *.so
5 |
6 | # Folders
7 | _obj
8 | _test
9 |
10 | # Architecture specific extensions/prefixes
11 | *.[568vq]
12 | [568vq].out
13 |
14 | *.cgo1.go
15 | *.cgo2.c
16 | _cgo_defun.c
17 | _cgo_gotypes.go
18 | _cgo_export.*
19 |
20 | _testmain.go
21 |
22 | *.exe
23 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/pflag/.gitignore:
--------------------------------------------------------------------------------
1 | .idea/*
2 |
3 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/pflag/.travis.yml:
--------------------------------------------------------------------------------
1 | sudo: false
2 |
3 | language: go
4 |
5 | go:
6 | - 1.9.x
7 | - 1.10.x
8 | - 1.11.x
9 | - tip
10 |
11 | matrix:
12 | allow_failures:
13 | - go: tip
14 |
15 | install:
16 | - go get golang.org/x/lint/golint
17 | - export PATH=$GOPATH/bin:$PATH
18 | - go install ./...
19 |
20 | script:
21 | - verify/all.sh -v
22 | - go test ./...
23 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/viper/.gitignore:
--------------------------------------------------------------------------------
1 | # Compiled Object files, Static and Dynamic libs (Shared Objects)
2 | *.o
3 | *.a
4 | *.so
5 |
6 | # Folders
7 | _obj
8 | _test
9 |
10 | # Architecture specific extensions/prefixes
11 | *.[568vq]
12 | [568vq].out
13 |
14 | *.cgo1.go
15 | *.cgo2.c
16 | _cgo_defun.c
17 | _cgo_gotypes.go
18 | _cgo_export.*
19 |
20 | _testmain.go
21 |
22 | *.exe
23 | *.test
24 | *.bench
25 |
26 | .vscode
27 |
28 | # exclude dependencies in the `/vendor` folder
29 | vendor
30 |
--------------------------------------------------------------------------------
/vendor/github.com/spf13/viper/.travis.yml:
--------------------------------------------------------------------------------
1 | go_import_path: github.com/spf13/viper
2 |
3 | language: go
4 |
5 | env:
6 | global:
7 | - GO111MODULE="on"
8 |
9 | go:
10 | - 1.11.x
11 | - tip
12 |
13 | os:
14 | - linux
15 | - osx
16 |
17 | matrix:
18 | allow_failures:
19 | - go: tip
20 | fast_finish: true
21 |
22 | script:
23 | - go install ./...
24 | - diff -u <(echo -n) <(gofmt -d .)
25 | - go test -v ./...
26 |
27 | after_success:
28 | - go get -u -d github.com/spf13/hugo
29 | - cd $GOPATH/src/github.com/spf13/hugo && make && ./hugo -s docs && cd -
30 |
31 | sudo: false
32 |
--------------------------------------------------------------------------------
/vendor/github.com/vertica/vertica-sql-go/.gitignore:
--------------------------------------------------------------------------------
1 | pkg
2 | bin
3 | src/golang.org
4 | src/github.com
5 | *.code-workspace
6 | .DS_Store
--------------------------------------------------------------------------------
/vendor/go.opentelemetry.io/otel/attribute/README.md:
--------------------------------------------------------------------------------
1 | # Attribute
2 |
3 | [](https://pkg.go.dev/go.opentelemetry.io/otel/attribute)
4 |
--------------------------------------------------------------------------------
/vendor/go.opentelemetry.io/otel/attribute/doc.go:
--------------------------------------------------------------------------------
1 | // Copyright The OpenTelemetry Authors
2 | // SPDX-License-Identifier: Apache-2.0
3 |
4 | // Package attribute provides key and value attributes.
5 | package attribute // import "go.opentelemetry.io/otel/attribute"
6 |
--------------------------------------------------------------------------------
/vendor/go.opentelemetry.io/otel/codes/README.md:
--------------------------------------------------------------------------------
1 | # Codes
2 |
3 | [](https://pkg.go.dev/go.opentelemetry.io/otel/codes)
4 |
--------------------------------------------------------------------------------
/vendor/go.opentelemetry.io/otel/codes/doc.go:
--------------------------------------------------------------------------------
1 | // Copyright The OpenTelemetry Authors
2 | // SPDX-License-Identifier: Apache-2.0
3 |
4 | /*
5 | Package codes defines the canonical error codes used by OpenTelemetry.
6 |
7 | It conforms to [the OpenTelemetry
8 | specification](https://github.com/open-telemetry/opentelemetry-specification/blob/v1.20.0/specification/trace/api.md#set-status).
9 | */
10 | package codes // import "go.opentelemetry.io/otel/codes"
11 |
--------------------------------------------------------------------------------
/vendor/go.opentelemetry.io/otel/trace/README.md:
--------------------------------------------------------------------------------
1 | # Trace API
2 |
3 | [](https://pkg.go.dev/go.opentelemetry.io/otel/trace)
4 |
--------------------------------------------------------------------------------
/vendor/go.opentelemetry.io/otel/trace/embedded/README.md:
--------------------------------------------------------------------------------
1 | # Trace Embedded
2 |
3 | [](https://pkg.go.dev/go.opentelemetry.io/otel/trace/embedded)
4 |
--------------------------------------------------------------------------------
/vendor/go.opentelemetry.io/otel/trace/nonrecording.go:
--------------------------------------------------------------------------------
1 | // Copyright The OpenTelemetry Authors
2 | // SPDX-License-Identifier: Apache-2.0
3 |
4 | package trace // import "go.opentelemetry.io/otel/trace"
5 |
6 | // nonRecordingSpan is a minimal implementation of a Span that wraps a
7 | // SpanContext. It performs no operations other than to return the wrapped
8 | // SpanContext.
9 | type nonRecordingSpan struct {
10 | noopSpan
11 |
12 | sc SpanContext
13 | }
14 |
15 | // SpanContext returns the wrapped SpanContext.
16 | func (s nonRecordingSpan) SpanContext() SpanContext { return s.sc }
17 |
--------------------------------------------------------------------------------
/vendor/go.uber.org/multierr/.codecov.yml:
--------------------------------------------------------------------------------
1 | coverage:
2 | range: 80..100
3 | round: down
4 | precision: 2
5 |
6 | status:
7 | project: # measuring the overall project coverage
8 | default: # context, you can create multiple ones with custom titles
9 | enabled: yes # must be yes|true to enable this status
10 | target: 100 # specify the target coverage for each commit status
11 | # option: "auto" (must increase from parent commit or pull request base)
12 | # option: "X%" a static target percentage to hit
13 | if_not_found: success # if parent is not found report status as success, error, or failure
14 | if_ci_failed: error # if ci fails report status as success, error, or failure
15 |
16 |
--------------------------------------------------------------------------------
/vendor/go.uber.org/multierr/.gitignore:
--------------------------------------------------------------------------------
1 | /vendor
2 | cover.html
3 | cover.out
4 | /bin
5 |
--------------------------------------------------------------------------------
/vendor/go.uber.org/zap/.codecov.yml:
--------------------------------------------------------------------------------
1 | coverage:
2 | range: 80..100
3 | round: down
4 | precision: 2
5 |
6 | status:
7 | project: # measuring the overall project coverage
8 | default: # context, you can create multiple ones with custom titles
9 | enabled: yes # must be yes|true to enable this status
10 | target: 95% # specify the target coverage for each commit status
11 | # option: "auto" (must increase from parent commit or pull request base)
12 | # option: "X%" a static target percentage to hit
13 | if_not_found: success # if parent is not found report status as success, error, or failure
14 | if_ci_failed: error # if ci fails report status as success, error, or failure
15 | ignore:
16 | - internal/readme/readme.go
17 |
18 |
--------------------------------------------------------------------------------
/vendor/go.uber.org/zap/.gitignore:
--------------------------------------------------------------------------------
1 | # Compiled Object files, Static and Dynamic libs (Shared Objects)
2 | *.o
3 | *.a
4 | *.so
5 |
6 | # Folders
7 | _obj
8 | _test
9 | vendor
10 |
11 | # Architecture specific extensions/prefixes
12 | *.[568vq]
13 | [568vq].out
14 |
15 | *.cgo1.go
16 | *.cgo2.c
17 | _cgo_defun.c
18 | _cgo_gotypes.go
19 | _cgo_export.*
20 |
21 | _testmain.go
22 |
23 | *.exe
24 | *.test
25 | *.prof
26 | *.pprof
27 | *.out
28 | *.log
29 |
30 | /bin
31 | cover.out
32 | cover.html
33 |
--------------------------------------------------------------------------------
/vendor/go.uber.org/zap/checklicense.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash -e
2 |
3 | ERROR_COUNT=0
4 | while read -r file
5 | do
6 | case "$(head -1 "${file}")" in
7 | *"Copyright (c) "*" Uber Technologies, Inc.")
8 | # everything's cool
9 | ;;
10 | *)
11 | echo "$file is missing license header."
12 | (( ERROR_COUNT++ ))
13 | ;;
14 | esac
15 | done < <(git ls-files "*\.go")
16 |
17 | exit $ERROR_COUNT
18 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sync/errgroup/go120.go:
--------------------------------------------------------------------------------
1 | // Copyright 2023 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build go1.20
6 |
7 | package errgroup
8 |
9 | import "context"
10 |
11 | func withCancelCause(parent context.Context) (context.Context, func(error)) {
12 | return context.WithCancelCause(parent)
13 | }
14 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sync/errgroup/pre_go120.go:
--------------------------------------------------------------------------------
1 | // Copyright 2023 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build !go1.20
6 |
7 | package errgroup
8 |
9 | import "context"
10 |
11 | func withCancelCause(parent context.Context) (context.Context, func(error)) {
12 | ctx, cancel := context.WithCancel(parent)
13 | return ctx, func(error) { cancel() }
14 | }
15 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/asm_aix_ppc64.s:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build gc
6 |
7 | #include "textflag.h"
8 |
9 | //
10 | // System calls for ppc64, AIX are implemented in runtime/syscall_aix.go
11 | //
12 |
13 | TEXT ·syscall6(SB),NOSPLIT,$0-88
14 | JMP syscall·syscall6(SB)
15 |
16 | TEXT ·rawSyscall6(SB),NOSPLIT,$0-88
17 | JMP syscall·rawSyscall6(SB)
18 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_aix.go:
--------------------------------------------------------------------------------
1 | // Copyright 2019 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build aix
6 |
7 | package cpu
8 |
9 | const (
10 | // getsystemcfg constants
11 | _SC_IMPL = 2
12 | _IMPL_POWER8 = 0x10000
13 | _IMPL_POWER9 = 0x20000
14 | )
15 |
16 | func archInit() {
17 | impl := getsystemcfg(_SC_IMPL)
18 | if impl&_IMPL_POWER8 != 0 {
19 | PPC64.IsPOWER8 = true
20 | }
21 | if impl&_IMPL_POWER9 != 0 {
22 | PPC64.IsPOWER8 = true
23 | PPC64.IsPOWER9 = true
24 | }
25 |
26 | Initialized = true
27 | }
28 |
29 | func getsystemcfg(label int) (n uint64) {
30 | r0, _ := callgetsystemcfg(label)
31 | n = uint64(r0)
32 | return
33 | }
34 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_gc_arm64.go:
--------------------------------------------------------------------------------
1 | // Copyright 2019 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build gc
6 |
7 | package cpu
8 |
9 | func getisar0() uint64
10 | func getisar1() uint64
11 | func getpfr0() uint64
12 | func getzfr0() uint64
13 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_gc_s390x.go:
--------------------------------------------------------------------------------
1 | // Copyright 2019 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build gc
6 |
7 | package cpu
8 |
9 | // haveAsmFunctions reports whether the other functions in this file can
10 | // be safely called.
11 | func haveAsmFunctions() bool { return true }
12 |
13 | // The following feature detection functions are defined in cpu_s390x.s.
14 | // They are likely to be expensive to call so the results should be cached.
15 | func stfle() facilityList
16 | func kmQuery() queryResult
17 | func kmcQuery() queryResult
18 | func kmctrQuery() queryResult
19 | func kmaQuery() queryResult
20 | func kimdQuery() queryResult
21 | func klmdQuery() queryResult
22 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_gc_x86.go:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build (386 || amd64 || amd64p32) && gc
6 |
7 | package cpu
8 |
9 | // cpuid is implemented in cpu_x86.s for gc compiler
10 | // and in cpu_gccgo.c for gccgo.
11 | func cpuid(eaxArg, ecxArg uint32) (eax, ebx, ecx, edx uint32)
12 |
13 | // xgetbv with ecx = 0 is implemented in cpu_x86.s for gc compiler
14 | // and in cpu_gccgo.c for gccgo.
15 | func xgetbv() (eax, edx uint32)
16 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_gccgo_arm64.go:
--------------------------------------------------------------------------------
1 | // Copyright 2019 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build gccgo
6 |
7 | package cpu
8 |
9 | func getisar0() uint64 { return 0 }
10 | func getisar1() uint64 { return 0 }
11 | func getpfr0() uint64 { return 0 }
12 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_linux.go:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build !386 && !amd64 && !amd64p32 && !arm64
6 |
7 | package cpu
8 |
9 | func archInit() {
10 | if err := readHWCAP(); err != nil {
11 | return
12 | }
13 | doinit()
14 | Initialized = true
15 | }
16 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_linux_mips64x.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build linux && (mips64 || mips64le)
6 |
7 | package cpu
8 |
9 | // HWCAP bits. These are exposed by the Linux kernel 5.4.
10 | const (
11 | // CPU features
12 | hwcap_MIPS_MSA = 1 << 1
13 | )
14 |
15 | func doinit() {
16 | // HWCAP feature bits
17 | MIPS64X.HasMSA = isSet(hwCap, hwcap_MIPS_MSA)
18 | }
19 |
20 | func isSet(hwc uint, value uint) bool {
21 | return hwc&value != 0
22 | }
23 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_linux_noinit.go:
--------------------------------------------------------------------------------
1 | // Copyright 2019 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build linux && !arm && !arm64 && !mips64 && !mips64le && !ppc64 && !ppc64le && !s390x
6 |
7 | package cpu
8 |
9 | func doinit() {}
10 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_loong64.go:
--------------------------------------------------------------------------------
1 | // Copyright 2022 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build loong64
6 |
7 | package cpu
8 |
9 | const cacheLineSize = 64
10 |
11 | func initOptions() {
12 | }
13 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_mips64x.go:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build mips64 || mips64le
6 |
7 | package cpu
8 |
9 | const cacheLineSize = 32
10 |
11 | func initOptions() {
12 | options = []option{
13 | {Name: "msa", Feature: &MIPS64X.HasMSA},
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_mipsx.go:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build mips || mipsle
6 |
7 | package cpu
8 |
9 | const cacheLineSize = 32
10 |
11 | func initOptions() {}
12 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_openbsd_arm64.s:
--------------------------------------------------------------------------------
1 | // Copyright 2022 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | #include "textflag.h"
6 |
7 | TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0
8 | JMP libc_sysctl(SB)
9 |
10 | GLOBL ·libc_sysctl_trampoline_addr(SB), RODATA, $8
11 | DATA ·libc_sysctl_trampoline_addr(SB)/8, $libc_sysctl_trampoline<>(SB)
12 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_other_arm.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build !linux && arm
6 |
7 | package cpu
8 |
9 | func archInit() {}
10 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_other_arm64.go:
--------------------------------------------------------------------------------
1 | // Copyright 2019 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build !linux && !netbsd && !openbsd && arm64
6 |
7 | package cpu
8 |
9 | func doinit() {}
10 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_other_mips64x.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build !linux && (mips64 || mips64le)
6 |
7 | package cpu
8 |
9 | func archInit() {
10 | Initialized = true
11 | }
12 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_other_ppc64x.go:
--------------------------------------------------------------------------------
1 | // Copyright 2022 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build !aix && !linux && (ppc64 || ppc64le)
6 |
7 | package cpu
8 |
9 | func archInit() {
10 | PPC64.IsPOWER8 = true
11 | Initialized = true
12 | }
13 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_other_riscv64.go:
--------------------------------------------------------------------------------
1 | // Copyright 2022 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build !linux && riscv64
6 |
7 | package cpu
8 |
9 | func archInit() {
10 | Initialized = true
11 | }
12 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_ppc64x.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build ppc64 || ppc64le
6 |
7 | package cpu
8 |
9 | const cacheLineSize = 128
10 |
11 | func initOptions() {
12 | options = []option{
13 | {Name: "darn", Feature: &PPC64.HasDARN},
14 | {Name: "scv", Feature: &PPC64.HasSCV},
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_riscv64.go:
--------------------------------------------------------------------------------
1 | // Copyright 2019 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build riscv64
6 |
7 | package cpu
8 |
9 | const cacheLineSize = 64
10 |
11 | func initOptions() {}
12 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_wasm.go:
--------------------------------------------------------------------------------
1 | // Copyright 2019 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build wasm
6 |
7 | package cpu
8 |
9 | // We're compiling the cpu package for an unknown (software-abstracted) CPU.
10 | // Make CacheLinePad an empty struct and hope that the usual struct alignment
11 | // rules are good enough.
12 |
13 | const cacheLineSize = 0
14 |
15 | func initOptions() {}
16 |
17 | func archInit() {}
18 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_x86.s:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build (386 || amd64 || amd64p32) && gc
6 |
7 | #include "textflag.h"
8 |
9 | // func cpuid(eaxArg, ecxArg uint32) (eax, ebx, ecx, edx uint32)
10 | TEXT ·cpuid(SB), NOSPLIT, $0-24
11 | MOVL eaxArg+0(FP), AX
12 | MOVL ecxArg+4(FP), CX
13 | CPUID
14 | MOVL AX, eax+8(FP)
15 | MOVL BX, ebx+12(FP)
16 | MOVL CX, ecx+16(FP)
17 | MOVL DX, edx+20(FP)
18 | RET
19 |
20 | // func xgetbv() (eax, edx uint32)
21 | TEXT ·xgetbv(SB),NOSPLIT,$0-8
22 | MOVL $0, CX
23 | XGETBV
24 | MOVL AX, eax+0(FP)
25 | MOVL DX, edx+4(FP)
26 | RET
27 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_zos.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | package cpu
6 |
7 | func archInit() {
8 | doinit()
9 | Initialized = true
10 | }
11 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/cpu_zos_s390x.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | package cpu
6 |
7 | func initS390Xbase() {
8 | // get the facilities list
9 | facilities := stfle()
10 |
11 | // mandatory
12 | S390X.HasZARCH = facilities.Has(zarch)
13 | S390X.HasSTFLE = facilities.Has(stflef)
14 | S390X.HasLDISP = facilities.Has(ldisp)
15 | S390X.HasEIMM = facilities.Has(eimm)
16 |
17 | // optional
18 | S390X.HasETF3EH = facilities.Has(etf3eh)
19 | S390X.HasDFP = facilities.Has(dfp)
20 | S390X.HasMSA = facilities.Has(msa)
21 | S390X.HasVX = facilities.Has(vx)
22 | if S390X.HasVX {
23 | S390X.HasVXE = facilities.Has(vxe)
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/endian_big.go:
--------------------------------------------------------------------------------
1 | // Copyright 2023 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build armbe || arm64be || m68k || mips || mips64 || mips64p32 || ppc || ppc64 || s390 || s390x || shbe || sparc || sparc64
6 |
7 | package cpu
8 |
9 | // IsBigEndian records whether the GOARCH's byte order is big endian.
10 | const IsBigEndian = true
11 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/endian_little.go:
--------------------------------------------------------------------------------
1 | // Copyright 2023 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build 386 || amd64 || amd64p32 || alpha || arm || arm64 || loong64 || mipsle || mips64le || mips64p32le || nios2 || ppc64le || riscv || riscv64 || sh || wasm
6 |
7 | package cpu
8 |
9 | // IsBigEndian records whether the GOARCH's byte order is big endian.
10 | const IsBigEndian = false
11 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/runtime_auxv.go:
--------------------------------------------------------------------------------
1 | // Copyright 2023 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | package cpu
6 |
7 | // getAuxvFn is non-nil on Go 1.21+ (via runtime_auxv_go121.go init)
8 | // on platforms that use auxv.
9 | var getAuxvFn func() []uintptr
10 |
11 | func getAuxv() []uintptr {
12 | if getAuxvFn == nil {
13 | return nil
14 | }
15 | return getAuxvFn()
16 | }
17 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/runtime_auxv_go121.go:
--------------------------------------------------------------------------------
1 | // Copyright 2023 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build go1.21
6 |
7 | package cpu
8 |
9 | import (
10 | _ "unsafe" // for linkname
11 | )
12 |
13 | //go:linkname runtime_getAuxv runtime.getAuxv
14 | func runtime_getAuxv() []uintptr
15 |
16 | func init() {
17 | getAuxvFn = runtime_getAuxv
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/cpu/syscall_aix_gccgo.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | // Recreate a getsystemcfg syscall handler instead of
6 | // using the one provided by x/sys/unix to avoid having
7 | // the dependency between them. (See golang.org/issue/32102)
8 | // Moreover, this file will be used during the building of
9 | // gccgo's libgo and thus must not used a CGo method.
10 |
11 | //go:build aix && gccgo
12 |
13 | package cpu
14 |
15 | import (
16 | "syscall"
17 | )
18 |
19 | //extern getsystemcfg
20 | func gccgoGetsystemcfg(label uint32) (r uint64)
21 |
22 | func callgetsystemcfg(label int) (r1 uintptr, e1 syscall.Errno) {
23 | r1 = uintptr(gccgoGetsystemcfg(uint32(label)))
24 | e1 = syscall.GetErrno()
25 | return
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/.gitignore:
--------------------------------------------------------------------------------
1 | _obj/
2 | unix.test
3 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/aliases.go:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos
6 |
7 | package unix
8 |
9 | import "syscall"
10 |
11 | type Signal = syscall.Signal
12 | type Errno = syscall.Errno
13 | type SysProcAttr = syscall.SysProcAttr
14 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build gc
6 |
7 | #include "textflag.h"
8 |
9 | //
10 | // System calls for ppc64, AIX are implemented in runtime/syscall_aix.go
11 | //
12 |
13 | TEXT ·syscall6(SB),NOSPLIT,$0-88
14 | JMP syscall·syscall6(SB)
15 |
16 | TEXT ·rawSyscall6(SB),NOSPLIT,$0-88
17 | JMP syscall·rawSyscall6(SB)
18 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/asm_bsd_386.s:
--------------------------------------------------------------------------------
1 | // Copyright 2021 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build (freebsd || netbsd || openbsd) && gc
6 |
7 | #include "textflag.h"
8 |
9 | // System call support for 386 BSD
10 |
11 | // Just jump to package syscall's implementation for all these functions.
12 | // The runtime may know about them.
13 |
14 | TEXT ·Syscall(SB),NOSPLIT,$0-28
15 | JMP syscall·Syscall(SB)
16 |
17 | TEXT ·Syscall6(SB),NOSPLIT,$0-40
18 | JMP syscall·Syscall6(SB)
19 |
20 | TEXT ·Syscall9(SB),NOSPLIT,$0-52
21 | JMP syscall·Syscall9(SB)
22 |
23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28
24 | JMP syscall·RawSyscall(SB)
25 |
26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
27 | JMP syscall·RawSyscall6(SB)
28 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/asm_bsd_amd64.s:
--------------------------------------------------------------------------------
1 | // Copyright 2021 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build (darwin || dragonfly || freebsd || netbsd || openbsd) && gc
6 |
7 | #include "textflag.h"
8 |
9 | // System call support for AMD64 BSD
10 |
11 | // Just jump to package syscall's implementation for all these functions.
12 | // The runtime may know about them.
13 |
14 | TEXT ·Syscall(SB),NOSPLIT,$0-56
15 | JMP syscall·Syscall(SB)
16 |
17 | TEXT ·Syscall6(SB),NOSPLIT,$0-80
18 | JMP syscall·Syscall6(SB)
19 |
20 | TEXT ·Syscall9(SB),NOSPLIT,$0-104
21 | JMP syscall·Syscall9(SB)
22 |
23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56
24 | JMP syscall·RawSyscall(SB)
25 |
26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
27 | JMP syscall·RawSyscall6(SB)
28 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/asm_bsd_arm.s:
--------------------------------------------------------------------------------
1 | // Copyright 2021 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build (freebsd || netbsd || openbsd) && gc
6 |
7 | #include "textflag.h"
8 |
9 | // System call support for ARM BSD
10 |
11 | // Just jump to package syscall's implementation for all these functions.
12 | // The runtime may know about them.
13 |
14 | TEXT ·Syscall(SB),NOSPLIT,$0-28
15 | B syscall·Syscall(SB)
16 |
17 | TEXT ·Syscall6(SB),NOSPLIT,$0-40
18 | B syscall·Syscall6(SB)
19 |
20 | TEXT ·Syscall9(SB),NOSPLIT,$0-52
21 | B syscall·Syscall9(SB)
22 |
23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28
24 | B syscall·RawSyscall(SB)
25 |
26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
27 | B syscall·RawSyscall6(SB)
28 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/asm_bsd_arm64.s:
--------------------------------------------------------------------------------
1 | // Copyright 2021 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build (darwin || freebsd || netbsd || openbsd) && gc
6 |
7 | #include "textflag.h"
8 |
9 | // System call support for ARM64 BSD
10 |
11 | // Just jump to package syscall's implementation for all these functions.
12 | // The runtime may know about them.
13 |
14 | TEXT ·Syscall(SB),NOSPLIT,$0-56
15 | JMP syscall·Syscall(SB)
16 |
17 | TEXT ·Syscall6(SB),NOSPLIT,$0-80
18 | JMP syscall·Syscall6(SB)
19 |
20 | TEXT ·Syscall9(SB),NOSPLIT,$0-104
21 | JMP syscall·Syscall9(SB)
22 |
23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56
24 | JMP syscall·RawSyscall(SB)
25 |
26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
27 | JMP syscall·RawSyscall6(SB)
28 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/asm_bsd_ppc64.s:
--------------------------------------------------------------------------------
1 | // Copyright 2022 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build (darwin || freebsd || netbsd || openbsd) && gc
6 |
7 | #include "textflag.h"
8 |
9 | //
10 | // System call support for ppc64, BSD
11 | //
12 |
13 | // Just jump to package syscall's implementation for all these functions.
14 | // The runtime may know about them.
15 |
16 | TEXT ·Syscall(SB),NOSPLIT,$0-56
17 | JMP syscall·Syscall(SB)
18 |
19 | TEXT ·Syscall6(SB),NOSPLIT,$0-80
20 | JMP syscall·Syscall6(SB)
21 |
22 | TEXT ·Syscall9(SB),NOSPLIT,$0-104
23 | JMP syscall·Syscall9(SB)
24 |
25 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56
26 | JMP syscall·RawSyscall(SB)
27 |
28 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
29 | JMP syscall·RawSyscall6(SB)
30 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/asm_bsd_riscv64.s:
--------------------------------------------------------------------------------
1 | // Copyright 2021 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build (darwin || freebsd || netbsd || openbsd) && gc
6 |
7 | #include "textflag.h"
8 |
9 | // System call support for RISCV64 BSD
10 |
11 | // Just jump to package syscall's implementation for all these functions.
12 | // The runtime may know about them.
13 |
14 | TEXT ·Syscall(SB),NOSPLIT,$0-56
15 | JMP syscall·Syscall(SB)
16 |
17 | TEXT ·Syscall6(SB),NOSPLIT,$0-80
18 | JMP syscall·Syscall6(SB)
19 |
20 | TEXT ·Syscall9(SB),NOSPLIT,$0-104
21 | JMP syscall·Syscall9(SB)
22 |
23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56
24 | JMP syscall·RawSyscall(SB)
25 |
26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
27 | JMP syscall·RawSyscall6(SB)
28 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s:
--------------------------------------------------------------------------------
1 | // Copyright 2019 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build gc
6 |
7 | #include "textflag.h"
8 |
9 | //
10 | // System call support for mips64, OpenBSD
11 | //
12 |
13 | // Just jump to package syscall's implementation for all these functions.
14 | // The runtime may know about them.
15 |
16 | TEXT ·Syscall(SB),NOSPLIT,$0-56
17 | JMP syscall·Syscall(SB)
18 |
19 | TEXT ·Syscall6(SB),NOSPLIT,$0-80
20 | JMP syscall·Syscall6(SB)
21 |
22 | TEXT ·Syscall9(SB),NOSPLIT,$0-104
23 | JMP syscall·Syscall9(SB)
24 |
25 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56
26 | JMP syscall·RawSyscall(SB)
27 |
28 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
29 | JMP syscall·RawSyscall6(SB)
30 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s:
--------------------------------------------------------------------------------
1 | // Copyright 2014 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build gc
6 |
7 | #include "textflag.h"
8 |
9 | //
10 | // System calls for amd64, Solaris are implemented in runtime/syscall_solaris.go
11 | //
12 |
13 | TEXT ·sysvicall6(SB),NOSPLIT,$0-88
14 | JMP syscall·sysvicall6(SB)
15 |
16 | TEXT ·rawSysvicall6(SB),NOSPLIT,$0-88
17 | JMP syscall·rawSysvicall6(SB)
18 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/bluetooth_linux.go:
--------------------------------------------------------------------------------
1 | // Copyright 2016 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | // Bluetooth sockets and messages
6 |
7 | package unix
8 |
9 | // Bluetooth Protocols
10 | const (
11 | BTPROTO_L2CAP = 0
12 | BTPROTO_HCI = 1
13 | BTPROTO_SCO = 2
14 | BTPROTO_RFCOMM = 3
15 | BTPROTO_BNEP = 4
16 | BTPROTO_CMTP = 5
17 | BTPROTO_HIDP = 6
18 | BTPROTO_AVDTP = 7
19 | )
20 |
21 | const (
22 | HCI_CHANNEL_RAW = 0
23 | HCI_CHANNEL_USER = 1
24 | HCI_CHANNEL_MONITOR = 2
25 | HCI_CHANNEL_CONTROL = 3
26 | HCI_CHANNEL_LOGGING = 4
27 | )
28 |
29 | // Socketoption Level
30 | const (
31 | SOL_BLUETOOTH = 0x112
32 | SOL_HCI = 0x0
33 | SOL_L2CAP = 0x6
34 | SOL_RFCOMM = 0x12
35 | SOL_SCO = 0x11
36 | )
37 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/constants.go:
--------------------------------------------------------------------------------
1 | // Copyright 2015 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos
6 |
7 | package unix
8 |
9 | const (
10 | R_OK = 0x4
11 | W_OK = 0x2
12 | X_OK = 0x1
13 | )
14 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/dev_aix_ppc.go:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build aix && ppc
6 |
7 | // Functions to access/create device major and minor numbers matching the
8 | // encoding used by AIX.
9 |
10 | package unix
11 |
12 | // Major returns the major component of a Linux device number.
13 | func Major(dev uint64) uint32 {
14 | return uint32((dev >> 16) & 0xffff)
15 | }
16 |
17 | // Minor returns the minor component of a Linux device number.
18 | func Minor(dev uint64) uint32 {
19 | return uint32(dev & 0xffff)
20 | }
21 |
22 | // Mkdev returns a Linux device number generated from the given major and minor
23 | // components.
24 | func Mkdev(major, minor uint32) uint64 {
25 | return uint64(((major) << 16) | (minor))
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/dev_darwin.go:
--------------------------------------------------------------------------------
1 | // Copyright 2017 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | // Functions to access/create device major and minor numbers matching the
6 | // encoding used in Darwin's sys/types.h header.
7 |
8 | package unix
9 |
10 | // Major returns the major component of a Darwin device number.
11 | func Major(dev uint64) uint32 {
12 | return uint32((dev >> 24) & 0xff)
13 | }
14 |
15 | // Minor returns the minor component of a Darwin device number.
16 | func Minor(dev uint64) uint32 {
17 | return uint32(dev & 0xffffff)
18 | }
19 |
20 | // Mkdev returns a Darwin device number generated from the given major and minor
21 | // components.
22 | func Mkdev(major, minor uint32) uint64 {
23 | return (uint64(major) << 24) | uint64(minor)
24 | }
25 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/endian_big.go:
--------------------------------------------------------------------------------
1 | // Copyright 2016 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 | //
5 | //go:build armbe || arm64be || m68k || mips || mips64 || mips64p32 || ppc || ppc64 || s390 || s390x || shbe || sparc || sparc64
6 |
7 | package unix
8 |
9 | const isBigEndian = true
10 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/endian_little.go:
--------------------------------------------------------------------------------
1 | // Copyright 2016 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 | //
5 | //go:build 386 || amd64 || amd64p32 || alpha || arm || arm64 || loong64 || mipsle || mips64le || mips64p32le || nios2 || ppc64le || riscv || riscv64 || sh
6 |
7 | package unix
8 |
9 | const isBigEndian = false
10 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/env_unix.go:
--------------------------------------------------------------------------------
1 | // Copyright 2010 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos
6 |
7 | // Unix environment variables.
8 |
9 | package unix
10 |
11 | import "syscall"
12 |
13 | func Getenv(key string) (value string, found bool) {
14 | return syscall.Getenv(key)
15 | }
16 |
17 | func Setenv(key, value string) error {
18 | return syscall.Setenv(key, value)
19 | }
20 |
21 | func Clearenv() {
22 | syscall.Clearenv()
23 | }
24 |
25 | func Environ() []string {
26 | return syscall.Environ()
27 | }
28 |
29 | func Unsetenv(key string) error {
30 | return syscall.Unsetenv(key)
31 | }
32 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go:
--------------------------------------------------------------------------------
1 | // Copyright 2014 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build (linux && 386) || (linux && arm) || (linux && mips) || (linux && mipsle) || (linux && ppc)
6 |
7 | package unix
8 |
9 | func init() {
10 | // On 32-bit Linux systems, the fcntl syscall that matches Go's
11 | // Flock_t type is SYS_FCNTL64, not SYS_FCNTL.
12 | fcntl64Syscall = SYS_FCNTL64
13 | }
14 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go:
--------------------------------------------------------------------------------
1 | // Copyright 2015 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build gccgo && linux && amd64
6 |
7 | package unix
8 |
9 | import "syscall"
10 |
11 | //extern gettimeofday
12 | func realGettimeofday(*Timeval, *byte) int32
13 |
14 | func gettimeofday(tv *Timeval) (err syscall.Errno) {
15 | r := realGettimeofday(tv, nil)
16 | if r < 0 {
17 | return syscall.GetErrno()
18 | }
19 | return 0
20 | }
21 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/mmap_nomremap.go:
--------------------------------------------------------------------------------
1 | // Copyright 2023 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build aix || darwin || dragonfly || freebsd || openbsd || solaris || zos
6 |
7 | package unix
8 |
9 | var mapper = &mmapper{
10 | active: make(map[*byte][]byte),
11 | mmap: mmap,
12 | munmap: munmap,
13 | }
14 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/pagesize_unix.go:
--------------------------------------------------------------------------------
1 | // Copyright 2017 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos
6 |
7 | // For Unix, get the pagesize from the runtime.
8 |
9 | package unix
10 |
11 | import "syscall"
12 |
13 | func Getpagesize() int {
14 | return syscall.Getpagesize()
15 | }
16 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/ptrace_darwin.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build darwin && !ios
6 |
7 | package unix
8 |
9 | func ptrace(request int, pid int, addr uintptr, data uintptr) error {
10 | return ptrace1(request, pid, addr, data)
11 | }
12 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/ptrace_ios.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build ios
6 |
7 | package unix
8 |
9 | func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
10 | return ENOTSUP
11 | }
12 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/race.go:
--------------------------------------------------------------------------------
1 | // Copyright 2012 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build (darwin && race) || (linux && race) || (freebsd && race)
6 |
7 | package unix
8 |
9 | import (
10 | "runtime"
11 | "unsafe"
12 | )
13 |
14 | const raceenabled = true
15 |
16 | func raceAcquire(addr unsafe.Pointer) {
17 | runtime.RaceAcquire(addr)
18 | }
19 |
20 | func raceReleaseMerge(addr unsafe.Pointer) {
21 | runtime.RaceReleaseMerge(addr)
22 | }
23 |
24 | func raceReadRange(addr unsafe.Pointer, len int) {
25 | runtime.RaceReadRange(addr, len)
26 | }
27 |
28 | func raceWriteRange(addr unsafe.Pointer, len int) {
29 | runtime.RaceWriteRange(addr, len)
30 | }
31 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/race0.go:
--------------------------------------------------------------------------------
1 | // Copyright 2012 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build aix || (darwin && !race) || (linux && !race) || (freebsd && !race) || netbsd || openbsd || solaris || dragonfly || zos
6 |
7 | package unix
8 |
9 | import (
10 | "unsafe"
11 | )
12 |
13 | const raceenabled = false
14 |
15 | func raceAcquire(addr unsafe.Pointer) {
16 | }
17 |
18 | func raceReleaseMerge(addr unsafe.Pointer) {
19 | }
20 |
21 | func raceReadRange(addr unsafe.Pointer, len int) {
22 | }
23 |
24 | func raceWriteRange(addr unsafe.Pointer, len int) {
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/readdirent_getdents.go:
--------------------------------------------------------------------------------
1 | // Copyright 2019 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build aix || dragonfly || freebsd || linux || netbsd || openbsd
6 |
7 | package unix
8 |
9 | // ReadDirent reads directory entries from fd and writes them into buf.
10 | func ReadDirent(fd int, buf []byte) (n int, err error) {
11 | return Getdents(fd, buf)
12 | }
13 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go:
--------------------------------------------------------------------------------
1 | // Copyright 2019 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build darwin || zos
6 |
7 | package unix
8 |
9 | import "unsafe"
10 |
11 | // ReadDirent reads directory entries from fd and writes them into buf.
12 | func ReadDirent(fd int, buf []byte) (n int, err error) {
13 | // Final argument is (basep *uintptr) and the syscall doesn't take nil.
14 | // 64 bits should be enough. (32 bits isn't even on 386). Since the
15 | // actual system call is getdirentries64, 64 is a good guess.
16 | // TODO(rsc): Can we use a single global basep for all calls?
17 | var base = (*uintptr)(unsafe.Pointer(new(uint64)))
18 | return Getdirentries(fd, buf, base)
19 | }
20 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go:
--------------------------------------------------------------------------------
1 | // Copyright 2019 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | package unix
6 |
7 | // Round the length of a raw sockaddr up to align it properly.
8 | func cmsgAlignOf(salen int) int {
9 | salign := SizeofPtr
10 | if SizeofPtr == 8 && !supportsABI(_dragonflyABIChangeVersion) {
11 | // 64-bit Dragonfly before the September 2019 ABI changes still requires
12 | // 32-bit aligned access to network subsystem.
13 | salign = 4
14 | }
15 | return (salen + salign - 1) & ^(salign - 1)
16 | }
17 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/syscall_hurd.go:
--------------------------------------------------------------------------------
1 | // Copyright 2022 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build hurd
6 |
7 | package unix
8 |
9 | /*
10 | #include
11 | int ioctl(int, unsigned long int, uintptr_t);
12 | */
13 | import "C"
14 |
15 | func ioctl(fd int, req uint, arg uintptr) (err error) {
16 | r0, er := C.ioctl(C.int(fd), C.ulong(req), C.uintptr_t(arg))
17 | if r0 == -1 && er != nil {
18 | err = er
19 | }
20 | return
21 | }
22 |
23 | func ioctlPtr(fd int, req uint, arg unsafe.Pointer) (err error) {
24 | r0, er := C.ioctl(C.int(fd), C.ulong(req), C.uintptr_t(uintptr(arg)))
25 | if r0 == -1 && er != nil {
26 | err = er
27 | }
28 | return
29 | }
30 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/syscall_hurd_386.go:
--------------------------------------------------------------------------------
1 | // Copyright 2022 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build 386 && hurd
6 |
7 | package unix
8 |
9 | const (
10 | TIOCGETA = 0x62251713
11 | )
12 |
13 | type Winsize struct {
14 | Row uint16
15 | Col uint16
16 | Xpixel uint16
17 | Ypixel uint16
18 | }
19 |
20 | type Termios struct {
21 | Iflag uint32
22 | Oflag uint32
23 | Cflag uint32
24 | Lflag uint32
25 | Cc [20]uint8
26 | Ispeed int32
27 | Ospeed int32
28 | }
29 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/syscall_linux_alarm.go:
--------------------------------------------------------------------------------
1 | // Copyright 2022 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build linux && (386 || amd64 || mips || mipsle || mips64 || mipsle || ppc64 || ppc64le || ppc || s390x || sparc64)
6 |
7 | package unix
8 |
9 | // SYS_ALARM is not defined on arm or riscv, but is available for other GOARCH
10 | // values.
11 |
12 | //sys Alarm(seconds uint) (remaining uint, err error)
13 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go:
--------------------------------------------------------------------------------
1 | // Copyright 2016 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build amd64 && linux && gc
6 |
7 | package unix
8 |
9 | import "syscall"
10 |
11 | //go:noescape
12 | func gettimeofday(tv *Timeval) (err syscall.Errno)
13 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/syscall_linux_gc.go:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build linux && gc
6 |
7 | package unix
8 |
9 | // SyscallNoError may be used instead of Syscall for syscalls that don't fail.
10 | func SyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr)
11 |
12 | // RawSyscallNoError may be used instead of RawSyscall for syscalls that don't
13 | // fail.
14 | func RawSyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr)
15 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build linux && gc && 386
6 |
7 | package unix
8 |
9 | import "syscall"
10 |
11 | // Underlying system call writes to newoffset via pointer.
12 | // Implemented in assembly to avoid allocation.
13 | func seek(fd int, offset int64, whence int) (newoffset int64, err syscall.Errno)
14 |
15 | func socketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno)
16 | func rawsocketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno)
17 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go:
--------------------------------------------------------------------------------
1 | // Copyright 2009 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build arm && gc && linux
6 |
7 | package unix
8 |
9 | import "syscall"
10 |
11 | // Underlying system call writes to newoffset via pointer.
12 | // Implemented in assembly to avoid allocation.
13 | func seek(fd int, offset int64, whence int) (newoffset int64, err syscall.Errno)
14 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build linux && gccgo && arm
6 |
7 | package unix
8 |
9 | import (
10 | "syscall"
11 | "unsafe"
12 | )
13 |
14 | func seek(fd int, offset int64, whence int) (int64, syscall.Errno) {
15 | var newoffset int64
16 | offsetLow := uint32(offset & 0xffffffff)
17 | offsetHigh := uint32((offset >> 32) & 0xffffffff)
18 | _, _, err := Syscall6(SYS__LLSEEK, uintptr(fd), uintptr(offsetHigh), uintptr(offsetLow), uintptr(unsafe.Pointer(&newoffset)), uintptr(whence), 0)
19 | return newoffset, err
20 | }
21 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go:
--------------------------------------------------------------------------------
1 | // Copyright 2009 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build amd64 && solaris
6 |
7 | package unix
8 |
9 | func setTimespec(sec, nsec int64) Timespec {
10 | return Timespec{Sec: sec, Nsec: nsec}
11 | }
12 |
13 | func setTimeval(sec, usec int64) Timeval {
14 | return Timeval{Sec: sec, Usec: usec}
15 | }
16 |
17 | func (iov *Iovec) SetLen(length int) {
18 | iov.Len = uint64(length)
19 | }
20 |
21 | func (msghdr *Msghdr) SetIovlen(length int) {
22 | msghdr.Iovlen = int32(length)
23 | }
24 |
25 | func (cmsg *Cmsghdr) SetLen(length int) {
26 | cmsg.Len = uint32(length)
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/syscall_unix_gc.go:
--------------------------------------------------------------------------------
1 | // Copyright 2016 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build (darwin || dragonfly || freebsd || (linux && !ppc64 && !ppc64le) || netbsd || openbsd || solaris) && gc
6 |
7 | package unix
8 |
9 | import "syscall"
10 |
11 | func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno)
12 | func Syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno)
13 | func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno)
14 | func RawSyscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno)
15 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/sysvshm_linux.go:
--------------------------------------------------------------------------------
1 | // Copyright 2021 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build linux
6 |
7 | package unix
8 |
9 | import "runtime"
10 |
11 | // SysvShmCtl performs control operations on the shared memory segment
12 | // specified by id.
13 | func SysvShmCtl(id, cmd int, desc *SysvShmDesc) (result int, err error) {
14 | if runtime.GOARCH == "arm" ||
15 | runtime.GOARCH == "mips64" || runtime.GOARCH == "mips64le" {
16 | cmd |= ipc_64
17 | }
18 |
19 | return shmctl(id, cmd, desc)
20 | }
21 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/sysvshm_unix_other.go:
--------------------------------------------------------------------------------
1 | // Copyright 2021 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build (darwin && !ios) || zos
6 |
7 | package unix
8 |
9 | // SysvShmCtl performs control operations on the shared memory segment
10 | // specified by id.
11 | func SysvShmCtl(id, cmd int, desc *SysvShmDesc) (result int, err error) {
12 | return shmctl(id, cmd, desc)
13 | }
14 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/unix/zptrace_linux_arm64.go:
--------------------------------------------------------------------------------
1 | // Code generated by linux/mkall.go generatePtraceRegSet("arm64"). DO NOT EDIT.
2 |
3 | package unix
4 |
5 | import "unsafe"
6 |
7 | // PtraceGetRegSetArm64 fetches the registers used by arm64 binaries.
8 | func PtraceGetRegSetArm64(pid, addr int, regsout *PtraceRegsArm64) error {
9 | iovec := Iovec{(*byte)(unsafe.Pointer(regsout)), uint64(unsafe.Sizeof(*regsout))}
10 | return ptracePtr(PTRACE_GETREGSET, pid, uintptr(addr), unsafe.Pointer(&iovec))
11 | }
12 |
13 | // PtraceSetRegSetArm64 sets the registers used by arm64 binaries.
14 | func PtraceSetRegSetArm64(pid, addr int, regs *PtraceRegsArm64) error {
15 | iovec := Iovec{(*byte)(unsafe.Pointer(regs)), uint64(unsafe.Sizeof(*regs))}
16 | return ptracePtr(PTRACE_SETREGSET, pid, uintptr(addr), unsafe.Pointer(&iovec))
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/windows/aliases.go:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build windows
6 |
7 | package windows
8 |
9 | import "syscall"
10 |
11 | type Errno = syscall.Errno
12 | type SysProcAttr = syscall.SysProcAttr
13 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/windows/mksyscall.go:
--------------------------------------------------------------------------------
1 | // Copyright 2009 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build generate
6 |
7 | package windows
8 |
9 | //go:generate go run golang.org/x/sys/windows/mkwinsyscall -output zsyscall_windows.go eventlog.go service.go syscall_windows.go security_windows.go setupapi_windows.go
10 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/windows/race.go:
--------------------------------------------------------------------------------
1 | // Copyright 2012 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build windows && race
6 |
7 | package windows
8 |
9 | import (
10 | "runtime"
11 | "unsafe"
12 | )
13 |
14 | const raceenabled = true
15 |
16 | func raceAcquire(addr unsafe.Pointer) {
17 | runtime.RaceAcquire(addr)
18 | }
19 |
20 | func raceReleaseMerge(addr unsafe.Pointer) {
21 | runtime.RaceReleaseMerge(addr)
22 | }
23 |
24 | func raceReadRange(addr unsafe.Pointer, len int) {
25 | runtime.RaceReadRange(addr, len)
26 | }
27 |
28 | func raceWriteRange(addr unsafe.Pointer, len int) {
29 | runtime.RaceWriteRange(addr, len)
30 | }
31 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/windows/race0.go:
--------------------------------------------------------------------------------
1 | // Copyright 2012 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build windows && !race
6 |
7 | package windows
8 |
9 | import (
10 | "unsafe"
11 | )
12 |
13 | const raceenabled = false
14 |
15 | func raceAcquire(addr unsafe.Pointer) {
16 | }
17 |
18 | func raceReleaseMerge(addr unsafe.Pointer) {
19 | }
20 |
21 | func raceReadRange(addr unsafe.Pointer, len int) {
22 | }
23 |
24 | func raceWriteRange(addr unsafe.Pointer, len int) {
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/windows/registry/mksyscall.go:
--------------------------------------------------------------------------------
1 | // Copyright 2015 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build generate
6 |
7 | package registry
8 |
9 | //go:generate go run golang.org/x/sys/windows/mkwinsyscall -output zsyscall_windows.go syscall.go
10 |
--------------------------------------------------------------------------------
/vendor/golang.org/x/sys/windows/str.go:
--------------------------------------------------------------------------------
1 | // Copyright 2009 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build windows
6 |
7 | package windows
8 |
9 | func itoa(val int) string { // do it here rather than with fmt to avoid dependency
10 | if val < 0 {
11 | return "-" + itoa(-val)
12 | }
13 | var buf [32]byte // big enough for int64
14 | i := len(buf) - 1
15 | for val >= 10 {
16 | buf[i] = byte(val%10 + '0')
17 | i--
18 | val /= 10
19 | }
20 | buf[i] = byte(val + '0')
21 | return string(buf[i:])
22 | }
23 |
--------------------------------------------------------------------------------
/vendor/gopkg.in/yaml.v2/.travis.yml:
--------------------------------------------------------------------------------
1 | language: go
2 |
3 | go:
4 | - "1.4.x"
5 | - "1.5.x"
6 | - "1.6.x"
7 | - "1.7.x"
8 | - "1.8.x"
9 | - "1.9.x"
10 | - "1.10.x"
11 | - "1.11.x"
12 | - "1.12.x"
13 | - "1.13.x"
14 | - "1.14.x"
15 | - "tip"
16 |
17 | go_import_path: gopkg.in/yaml.v2
18 |
--------------------------------------------------------------------------------
/vendor/gopkg.in/yaml.v2/NOTICE:
--------------------------------------------------------------------------------
1 | Copyright 2011-2016 Canonical Ltd.
2 |
3 | Licensed under the Apache License, Version 2.0 (the "License");
4 | you may not use this file except in compliance with the License.
5 | You may obtain a copy of the License at
6 |
7 | http://www.apache.org/licenses/LICENSE-2.0
8 |
9 | Unless required by applicable law or agreed to in writing, software
10 | distributed under the License is distributed on an "AS IS" BASIS,
11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | See the License for the specific language governing permissions and
13 | limitations under the License.
14 |
--------------------------------------------------------------------------------
/vendor/gopkg.in/yaml.v2/writerc.go:
--------------------------------------------------------------------------------
1 | package yaml
2 |
3 | // Set the writer error and return false.
4 | func yaml_emitter_set_writer_error(emitter *yaml_emitter_t, problem string) bool {
5 | emitter.error = yaml_WRITER_ERROR
6 | emitter.problem = problem
7 | return false
8 | }
9 |
10 | // Flush the output buffer.
11 | func yaml_emitter_flush(emitter *yaml_emitter_t) bool {
12 | if emitter.write_handler == nil {
13 | panic("write handler not set")
14 | }
15 |
16 | // Check if the buffer is empty.
17 | if emitter.buffer_pos == 0 {
18 | return true
19 | }
20 |
21 | if err := emitter.write_handler(emitter, emitter.buffer[:emitter.buffer_pos]); err != nil {
22 | return yaml_emitter_set_writer_error(emitter, "write error: "+err.Error())
23 | }
24 | emitter.buffer_pos = 0
25 | return true
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/gopkg.in/yaml.v3/NOTICE:
--------------------------------------------------------------------------------
1 | Copyright 2011-2016 Canonical Ltd.
2 |
3 | Licensed under the Apache License, Version 2.0 (the "License");
4 | you may not use this file except in compliance with the License.
5 | You may obtain a copy of the License at
6 |
7 | http://www.apache.org/licenses/LICENSE-2.0
8 |
9 | Unless required by applicable law or agreed to in writing, software
10 | distributed under the License is distributed on an "AS IS" BASIS,
11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | See the License for the specific language governing permissions and
13 | limitations under the License.
14 |
--------------------------------------------------------------------------------
/vendor/howett.net/plist/.gitignore:
--------------------------------------------------------------------------------
1 | # Binaries for programs and plugins
2 | *.exe
3 | *.exe~
4 | *.dll
5 | *.so
6 | *.dylib
7 | *.wasm
8 |
9 | # Test binary, built with `go test -c`
10 | *.test
11 |
12 | # Output of the go coverage tool, specifically when used with LiteIDE
13 | *.out
14 |
15 | # Dependency directories (remove the comment below to include it)
16 | # vendor/
17 |
--------------------------------------------------------------------------------
/vendor/howett.net/plist/README.md:
--------------------------------------------------------------------------------
1 | # plist - A pure Go property list transcoder [](https://gitlab.howett.net/go/plist/commits/main)
2 | ## INSTALL
3 | ```
4 | $ go get howett.net/plist
5 | ```
6 |
7 | ## FEATURES
8 | * Supports encoding/decoding property lists (Apple XML, Apple Binary, OpenStep and GNUStep) from/to arbitrary Go types
9 |
10 | ## USE
11 | ```go
12 | package main
13 | import (
14 | "howett.net/plist"
15 | "os"
16 | )
17 | func main() {
18 | encoder := plist.NewEncoder(os.Stdout)
19 | encoder.Encode(map[string]string{"hello": "world"})
20 | }
21 | ```
22 |
--------------------------------------------------------------------------------
/vendor/howett.net/plist/bplist.go:
--------------------------------------------------------------------------------
1 | package plist
2 |
3 | type bplistTrailer struct {
4 | Unused [5]uint8
5 | SortVersion uint8
6 | OffsetIntSize uint8
7 | ObjectRefSize uint8
8 | NumObjects uint64
9 | TopObject uint64
10 | OffsetTableOffset uint64
11 | }
12 |
13 | const (
14 | bpTagNull uint8 = 0x00
15 | bpTagBoolFalse = 0x08
16 | bpTagBoolTrue = 0x09
17 | bpTagInteger = 0x10
18 | bpTagReal = 0x20
19 | bpTagDate = 0x30
20 | bpTagData = 0x40
21 | bpTagASCIIString = 0x50
22 | bpTagUTF16String = 0x60
23 | bpTagUID = 0x80
24 | bpTagArray = 0xA0
25 | bpTagDictionary = 0xD0
26 | )
27 |
--------------------------------------------------------------------------------
/vendor/howett.net/plist/doc.go:
--------------------------------------------------------------------------------
1 | // Package plist implements encoding and decoding of Apple's "property list" format.
2 | // Property lists come in three sorts: plain text (GNUStep and OpenStep), XML and binary.
3 | // plist supports all of them.
4 | // The mapping between property list and Go objects is described in the documentation for the Marshal and Unmarshal functions.
5 | package plist
6 |
--------------------------------------------------------------------------------
/vendor/howett.net/plist/fuzz.go:
--------------------------------------------------------------------------------
1 | // +build gofuzz
2 |
3 | package plist
4 |
5 | import (
6 | "bytes"
7 | )
8 |
9 | func Fuzz(data []byte) int {
10 | buf := bytes.NewReader(data)
11 |
12 | var obj interface{}
13 | if err := NewDecoder(buf).Decode(&obj); err != nil {
14 | return 0
15 | }
16 | return 1
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/howett.net/plist/util.go:
--------------------------------------------------------------------------------
1 | package plist
2 |
3 | import "io"
4 |
5 | type countedWriter struct {
6 | io.Writer
7 | nbytes int
8 | }
9 |
10 | func (w *countedWriter) Write(p []byte) (int, error) {
11 | n, err := w.Writer.Write(p)
12 | w.nbytes += n
13 | return n, err
14 | }
15 |
16 | func (w *countedWriter) BytesWritten() int {
17 | return w.nbytes
18 | }
19 |
20 | func unsignedGetBase(s string) (string, int) {
21 | if len(s) > 1 && s[0] == '0' && (s[1] == 'x' || s[1] == 'X') {
22 | return s[2:], 16
23 | }
24 | return s, 10
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/howett.net/plist/zerocopy.go:
--------------------------------------------------------------------------------
1 | // +build !appengine
2 |
3 | package plist
4 |
5 | import (
6 | "reflect"
7 | "unsafe"
8 | )
9 |
10 | func zeroCopy8BitString(buf []byte, off int, len int) string {
11 | if len == 0 {
12 | return ""
13 | }
14 |
15 | var s string
16 | hdr := (*reflect.StringHeader)(unsafe.Pointer(&s))
17 | hdr.Data = uintptr(unsafe.Pointer(&buf[off]))
18 | hdr.Len = len
19 | return s
20 | }
21 |
--------------------------------------------------------------------------------
/vendor/howett.net/plist/zerocopy_appengine.go:
--------------------------------------------------------------------------------
1 | // +build appengine
2 |
3 | package plist
4 |
5 | func zeroCopy8BitString(buf []byte, off int, len int) string {
6 | return string(buf[off : off+len])
7 | }
8 |
--------------------------------------------------------------------------------
/vendor/mellium.im/sasl/.gitignore:
--------------------------------------------------------------------------------
1 | *.sw[op]
2 | *.svg
3 | *.xml
4 | *.out
5 | Gopkg.lock
6 | vendor/
7 |
--------------------------------------------------------------------------------
/vendor/mellium.im/sasl/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 | All notable changes to this project will be documented in this file.
4 |
5 |
6 | ## v0.3.1 — 2022-12-28
7 |
8 | ### Fixed
9 |
10 | - Sometimes the nonce was not set on the SASL state machine, resulting in
11 | authentication failing
12 |
13 |
14 | ## v0.3.0 — 2022-08-15
15 |
16 | ### Added
17 |
18 | - Support for tls-exporter channel binding method as defined in [RFC 9266]
19 | - Support for fast XOR using SIMD/VSX on more architectures
20 |
21 |
22 | ### Fixed
23 |
24 | - Return an error if no tls-unique channel binding (CB) data is present in the
25 | TLS connection state (or no connection state exists) and we use SCRAM with CB
26 |
27 |
28 | [RFC 9266]: https://datatracker.ietf.org/doc/html/rfc9266
29 |
--------------------------------------------------------------------------------
/vendor/mellium.im/sasl/doc.go:
--------------------------------------------------------------------------------
1 | // Copyright 2016 The Mellium Contributors.
2 | // Use of this source code is governed by the BSD 2-clause
3 | // license that can be found in the LICENSE file.
4 |
5 | // Package sasl implements the Simple Authentication and Security Layer (SASL)
6 | // as defined by RFC 4422.
7 | //
8 | // Most users of this package will only need to create a Negotiator using
9 | // NewClient or NewServer and call its Step method repeatedly.
10 | // Authors implementing SASL mechanisms other than the builtin ones will want to
11 | // create a Mechanism struct which will likely use the other methods on the
12 | // Negotiator.
13 | //
14 | // Be advised: This API is still unstable and is subject to change.
15 | package sasl // import "mellium.im/sasl"
16 |
--------------------------------------------------------------------------------
/vendor/mellium.im/sasl/nonce.go:
--------------------------------------------------------------------------------
1 | // Copyright 2016 The Mellium Contributors.
2 | // Use of this source code is governed by the BSD 2-clause
3 | // license that can be found in the LICENSE file.
4 |
5 | package sasl
6 |
7 | import (
8 | "encoding/base64"
9 | "io"
10 | )
11 |
12 | // Generates a nonce with n random bytes base64 encoded to ensure that it meets
13 | // the criteria for inclusion in a SCRAM message.
14 | func nonce(n int, r io.Reader) []byte {
15 | if n < 1 {
16 | panic("Cannot generate zero or negative length nonce")
17 | }
18 | b := make([]byte, n)
19 | n2, err := r.Read(b)
20 | switch {
21 | case err != nil:
22 | panic(err)
23 | case n2 != n:
24 | panic("Could not read enough randomness to generate nonce")
25 | }
26 | val := make([]byte, base64.RawStdEncoding.EncodedLen(n))
27 | base64.RawStdEncoding.Encode(val, b)
28 |
29 | return val
30 | }
31 |
--------------------------------------------------------------------------------
/vendor/mellium.im/sasl/xor.go:
--------------------------------------------------------------------------------
1 | // Copyright 2022 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build !go1.20
6 |
7 | package sasl
8 |
9 | // TODO: remove all the specialized XOR code and use "crypto/subtle".XORBytes
10 | // when Go v1.21 comes out. For more information see:
11 | // https://mellium.im/issue/338
12 |
13 | func goXORBytes(dst, x, y []byte) int {
14 | n := len(x)
15 | if len(y) < n {
16 | n = len(y)
17 | }
18 | if n == 0 {
19 | return 0
20 | }
21 | if n > len(dst) {
22 | panic("subtle.XORBytes: dst too short")
23 | }
24 | xorBytes(&dst[0], &x[0], &y[0], n) // arch-specific
25 | return n
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/mellium.im/sasl/xor_amd64.go:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build !purego
6 |
7 | package sasl
8 |
9 | //go:noescape
10 | func xorBytes(dst, a, b *byte, n int)
11 |
--------------------------------------------------------------------------------
/vendor/mellium.im/sasl/xor_arm64.go:
--------------------------------------------------------------------------------
1 | // Copyright 2020 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build !purego
6 |
7 | package sasl
8 |
9 | //go:noescape
10 | func xorBytes(dst, a, b *byte, n int)
11 |
--------------------------------------------------------------------------------
/vendor/mellium.im/sasl/xor_go.go:
--------------------------------------------------------------------------------
1 | // Copyright 2022 The Mellium Contributors.
2 | // Use of this source code is governed by the BSD 2-clause
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build go1.20
6 |
7 | package sasl
8 |
9 | import (
10 | "crypto/subtle"
11 | )
12 |
13 | func goXORBytes(dst, x, y []byte) int {
14 | return subtle.XORBytes(dst, x, y)
15 | }
16 |
--------------------------------------------------------------------------------
/vendor/mellium.im/sasl/xor_ppc64x.go:
--------------------------------------------------------------------------------
1 | // Copyright 2018 The Go Authors. All rights reserved.
2 | // Use of this source code is governed by a BSD-style
3 | // license that can be found in the LICENSE file.
4 |
5 | //go:build (ppc64 || ppc64le) && !purego
6 |
7 | package sasl
8 |
9 | //go:noescape
10 | func xorBytes(dst, a, b *byte, n int)
11 |
--------------------------------------------------------------------------------