├── .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 | [![Build Status](http://img.shields.io/travis/elastic/go-windows.svg?style=flat-square)][travis] 4 | [![Build status](https://ci.appveyor.com/api/projects/status/remqhuw0jjguygc3/branch/master?svg=true)][appveyor] 5 | [![Go Documentation](http://img.shields.io/badge/go-documentation-blue.svg?style=flat-square)][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 | [![CircleCI](https://circleci.com/gh/im-kulikov/migrate/tree/master.svg?style=svg)](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 | [![PkgGoDev](https://pkg.go.dev/badge/go.opentelemetry.io/otel/attribute)](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 | [![PkgGoDev](https://pkg.go.dev/badge/go.opentelemetry.io/otel/codes)](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 | [![PkgGoDev](https://pkg.go.dev/badge/go.opentelemetry.io/otel/trace)](https://pkg.go.dev/go.opentelemetry.io/otel/trace) 4 | -------------------------------------------------------------------------------- /vendor/go.opentelemetry.io/otel/trace/embedded/README.md: -------------------------------------------------------------------------------- 1 | # Trace Embedded 2 | 3 | [![PkgGoDev](https://pkg.go.dev/badge/go.opentelemetry.io/otel/trace/embedded)](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 [![coverage report](https://gitlab.howett.net/go/plist/badges/main/coverage.svg)](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 | --------------------------------------------------------------------------------