├── .gitignore ├── 01-first-go-program ├── README.md ├── feeds.go ├── go.mod ├── main.go └── searcher │ ├── rss.go │ └── search.go ├── 03-unit-testing ├── mock │ ├── db.go │ ├── go.mod │ ├── go.sum │ ├── mock_db_test.go │ ├── models.go │ ├── store.go │ └── store_test.go ├── mock_faker │ ├── db.go │ ├── go.mod │ ├── go.sum │ ├── mock_db_test.go │ ├── models.go │ ├── store.go │ └── store_test.go ├── mock_suite │ ├── db.go │ ├── go.mod │ ├── go.sum │ ├── mock_db_test.go │ ├── models.go │ ├── store.go │ └── store_test.go └── time │ ├── clock_test.go │ ├── go.mod │ ├── go.sum │ └── timex_test.go ├── 04-simple-data-types ├── example │ └── example.go ├── go.mod ├── go.sum ├── main.go └── runes │ └── runes.go ├── 05-structures ├── child │ └── main.go ├── country │ └── main.go ├── go.mod ├── main.go ├── market │ └── market.go ├── pets │ └── pets.go ├── stack │ └── main.go └── user.go ├── 05-testing ├── asserts_test.go ├── err_and_fatal_test.go ├── go.mod ├── go.sum ├── golden_files │ ├── golden_test.go │ └── testdata │ │ ├── Aunt Mildred.golden │ │ ├── Cousin Rodney.golden │ │ └── Uncle John.golden ├── titlecase_test.go └── utils.go ├── 08-errors-handling ├── 01_std_errors │ └── main.go ├── 02_err_is_values │ └── main.go ├── 03_sentinel_errors │ └── main.go ├── 04_err_type │ └── main.go ├── 05_pkg_errors_wrap │ └── main.go ├── 06_pkg_errors_cause │ └── main.go ├── 07_fmt_errorf │ └── main.go ├── 08_errors_unwrap │ └── main.go ├── 09_defer │ └── main.go ├── 10_defer │ └── main.go ├── 11_panic_handle │ └── main.go ├── 13_multierr │ └── main.go ├── 13_multierr_legacy │ └── main.go ├── README.md ├── go.mod └── go.sum ├── 09-interfaces-p1 ├── app.go ├── example │ └── example.go ├── go.mod ├── logger.go └── main.go ├── 09-packages ├── example │ ├── bin │ │ └── mod │ ├── ex │ ├── math2 │ ├── pkg │ │ ├── darwin_amd64 │ │ │ ├── calc.a │ │ │ ├── calc │ │ │ │ └── internal.a │ │ │ └── nousing.a │ │ └── mod │ │ │ ├── cache │ │ │ ├── download │ │ │ │ └── github.com │ │ │ │ │ └── !b!h!y!c!h!i!k │ │ │ │ │ └── testmod │ │ │ │ │ ├── @v │ │ │ │ │ ├── list │ │ │ │ │ ├── list.lock │ │ │ │ │ ├── v1.0.0.info │ │ │ │ │ ├── v1.0.0.lock │ │ │ │ │ ├── v1.0.0.mod │ │ │ │ │ ├── v1.0.0.zip │ │ │ │ │ ├── v1.0.0.ziphash │ │ │ │ │ ├── v1.0.1.info │ │ │ │ │ ├── v1.0.1.lock │ │ │ │ │ ├── v1.0.1.mod │ │ │ │ │ ├── v1.0.1.zip │ │ │ │ │ └── v1.0.1.ziphash │ │ │ │ │ └── v2 │ │ │ │ │ └── @v │ │ │ │ │ ├── list │ │ │ │ │ ├── list.lock │ │ │ │ │ ├── v2.0.2.info │ │ │ │ │ ├── v2.0.2.lock │ │ │ │ │ ├── v2.0.2.mod │ │ │ │ │ ├── v2.0.2.zip │ │ │ │ │ └── v2.0.2.ziphash │ │ │ ├── lock │ │ │ └── vcs │ │ │ │ ├── cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572.info │ │ │ │ ├── cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572.lock │ │ │ │ └── cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572 │ │ │ │ ├── FETCH_HEAD │ │ │ │ ├── HEAD │ │ │ │ ├── config │ │ │ │ ├── description │ │ │ │ ├── hooks │ │ │ │ ├── applypatch-msg.sample │ │ │ │ ├── commit-msg.sample │ │ │ │ ├── post-update.sample │ │ │ │ ├── pre-applypatch.sample │ │ │ │ ├── pre-commit.sample │ │ │ │ ├── pre-push.sample │ │ │ │ ├── pre-rebase.sample │ │ │ │ ├── prepare-commit-msg.sample │ │ │ │ └── update.sample │ │ │ │ ├── info │ │ │ │ ├── attributes │ │ │ │ └── exclude │ │ │ │ ├── objects │ │ │ │ ├── 39 │ │ │ │ │ └── e6bbff8dc4ac0973142faa7cfd39d211539a36 │ │ │ │ ├── 57 │ │ │ │ │ └── f9931e1d91ee5c034bd1d2b51ee73927c9a08f │ │ │ │ ├── 65 │ │ │ │ │ └── 2063eeeb250e50bc7c2ad6c661ab340fcb7d28 │ │ │ │ ├── 85 │ │ │ │ │ └── c155f96fdb72d1a4936d56376edbe38c72f986 │ │ │ │ ├── 02 │ │ │ │ │ └── ea74b485a8afa406a38563367f3d2b539ffec8 │ │ │ │ ├── 07 │ │ │ │ │ ├── 5c39d0531a595a3941f3f7409ce7044cb32ec9 │ │ │ │ │ └── 98c93fd1e96d6b15821aa8753744620636cfd1 │ │ │ │ ├── 2a │ │ │ │ │ └── 65dc2033ef649d8dd7e61a9ebb27a79d1291ac │ │ │ │ ├── 2f │ │ │ │ │ └── 49ad06a932c5b4a4cd646842582ac797ece30d │ │ │ │ ├── 4c │ │ │ │ │ └── e114ad809cacceedde04f6c64b20417e153fd2 │ │ │ │ ├── 7e │ │ │ │ │ └── 4c735d3464013cc11b0099b9320fd849e900df │ │ │ │ ├── ad │ │ │ │ │ └── 79b28f71daa47a2759b47511800457af0f0109 │ │ │ │ ├── b0 │ │ │ │ │ └── 108ce3a7beec624243c91fe1989ed20fcc01b1 │ │ │ │ ├── b9 │ │ │ │ │ └── 7a03123ac2c017ce5918aa80eea113e019b9d3 │ │ │ │ ├── c9 │ │ │ │ │ └── 5cf571c583ff18ec1224ba4b26c2a3eec6881f │ │ │ │ ├── d5 │ │ │ │ │ └── 93a25337a23624a6c68a063ae613f9100e85f2 │ │ │ │ └── ed │ │ │ │ │ └── 56ae4bc0b05310eeeab2d46b04d51c293c6243 │ │ │ │ ├── refs │ │ │ │ └── tags │ │ │ │ │ ├── v1.0.0 │ │ │ │ │ ├── v1.0.1 │ │ │ │ │ ├── v2.0.0 │ │ │ │ │ ├── v2.0.1 │ │ │ │ │ └── v2.0.2 │ │ │ │ └── shallow │ │ │ └── github.com │ │ │ └── !b!h!y!c!h!i!k │ │ │ ├── testmod │ │ │ └── v2@v2.0.2 │ │ │ │ ├── README.md │ │ │ │ ├── go.mod │ │ │ │ └── test.go │ │ │ ├── testmod@v1.0.0 │ │ │ ├── README.md │ │ │ ├── go.mod │ │ │ └── test.go │ │ │ └── testmod@v1.0.1 │ │ │ ├── README.md │ │ │ ├── go.mod │ │ │ └── test.go │ └── src │ │ ├── calc │ │ ├── antisin.go │ │ ├── internal │ │ │ └── internal.go │ │ ├── mult.go │ │ └── sum.go │ │ ├── ex │ │ └── ex.go │ │ ├── math2 │ │ └── main.go │ │ ├── nousing │ │ └── no.go │ │ └── testsql │ │ ├── Gopkg.lock │ │ ├── Gopkg.toml │ │ ├── main.go │ │ └── vendor │ │ ├── github.com │ │ └── go-sql-driver │ │ │ └── mysql │ │ │ ├── .gitignore │ │ │ ├── .travis.yml │ │ │ ├── AUTHORS │ │ │ ├── CHANGELOG.md │ │ │ ├── CONTRIBUTING.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── appengine.go │ │ │ ├── auth.go │ │ │ ├── buffer.go │ │ │ ├── collations.go │ │ │ ├── connection.go │ │ │ ├── connection_go18.go │ │ │ ├── const.go │ │ │ ├── driver.go │ │ │ ├── dsn.go │ │ │ ├── errors.go │ │ │ ├── fields.go │ │ │ ├── infile.go │ │ │ ├── packets.go │ │ │ ├── result.go │ │ │ ├── rows.go │ │ │ ├── statement.go │ │ │ ├── transaction.go │ │ │ ├── utils.go │ │ │ ├── utils_go17.go │ │ │ └── utils_go18.go │ │ └── google.golang.org │ │ └── appengine │ │ ├── LICENSE │ │ └── cloudsql │ │ ├── cloudsql.go │ │ ├── cloudsql_classic.go │ │ └── cloudsql_vm.go └── testprog │ ├── go.mod │ ├── go.sum │ ├── main.go │ ├── mod │ └── vendor │ ├── github.com │ └── BHYCHIK │ │ └── testmod │ │ └── v2 │ │ ├── README.md │ │ ├── go.mod │ │ └── test.go │ └── modules.txt ├── 10-interfaces-p2 ├── 01-nil │ └── main.go ├── 02-limit-reader │ └── main.go ├── 03-type-assertion │ └── main.go ├── 04-type-switch │ └── main.go ├── 05-privates │ ├── contract │ │ ├── contgract.go │ │ └── int_impl.go │ ├── impl │ │ └── ext_impl.go │ └── main.go ├── 05-sort │ └── main.go ├── 06-refs │ └── main_test.go ├── example │ └── main.go └── go.mod ├── 12-sync-primitives-p1 ├── race │ ├── go.mod │ └── race.go └── race_limit │ ├── go.mod │ └── race_limit.go ├── 13-sync-primitives-p2 └── read_race │ └── main.go ├── 14-concurrency-patterns ├── 1_adhoc │ └── main.go ├── 2_lexical │ └── main.go ├── 3_1_leak │ └── main.go ├── 3_2_done_ch │ └── main.go ├── 3_3_close_data_ch │ └── main.go ├── 4_or_magic │ ├── main.go │ └── or1.go ├── 5_1_handle_err_in_place │ └── main.go ├── 5_2_throw_err_above │ └── main.go ├── 6_1_pipeline │ └── main.go ├── 6_2_stage_constructor │ └── main.go ├── 6_3_stream_pipeline │ └── main.go ├── 6_4_stream_pipeline_with_done │ └── main.go ├── 8_useful_generators │ └── main.go ├── 9_1_prime_finding │ ├── main.go │ ├── prime_finder.go │ ├── repeat_fn.go │ ├── take.go │ └── to_int.go ├── 9_2_fanin_fanout │ ├── fan_in.go │ ├── main.go │ ├── prime_finder.go │ ├── repeat_fn.go │ ├── take.go │ └── to_int.go └── go.mod ├── 16-internals-memory ├── halfsum │ └── main.go ├── heap │ └── main.go ├── stack │ └── main.go └── stack_pointer │ └── main.go ├── 17-input-output ├── exampletest │ ├── example_test.go │ └── testdata │ │ └── example.txt ├── go.mod ├── go.sum ├── readfile │ └── main.go ├── regex │ └── main.go └── writefile │ └── main.go ├── 17-reflection └── main_test.go ├── 18-format ├── base64 │ └── base64.go ├── base64flow │ └── main.go ├── jsonex │ ├── 0_json.go │ ├── 1_json.go │ ├── 2_json.go │ ├── 3_different_rules.go │ ├── 4_recursive_problem.go │ └── 5_raw_message.go ├── msgpackex │ └── ex1.go ├── protobufex │ ├── gen.sh │ ├── main.go │ ├── person.pb.go │ └── person.proto └── xmlex │ ├── sax.go │ ├── xml1.go │ └── xml2.go ├── 19-clean-architecture ├── .gitignore ├── Makefile ├── api │ └── api.proto ├── cmd │ ├── grpc_client.go │ ├── grpc_server.go │ └── root.go ├── go.mod ├── go.sum ├── internal │ ├── adapters │ │ ├── grpc │ │ │ └── api │ │ │ │ ├── api.pb.go │ │ │ │ └── server.go │ │ └── maindb │ │ │ └── maindb.go │ └── domain │ │ ├── entities │ │ └── event.go │ │ ├── errors │ │ └── error.go │ │ ├── interfaces │ │ └── event_storage.go │ │ └── usecases │ │ └── event.go ├── main.go └── sql │ ├── 001.sql │ └── 002.sql ├── 19-os ├── cmd │ └── main.go ├── cmd_pipe │ └── main.go ├── cobra │ └── git2 │ │ ├── LICENSE │ │ ├── cmd │ │ ├── commit.go │ │ └── root.go │ │ ├── go.mod │ │ ├── go.sum │ │ └── main.go ├── env │ └── main.go ├── flag │ └── main.go ├── go.mod ├── go.sum ├── pflag │ └── main.go ├── safefile │ └── main.go ├── signal │ └── main.go └── tmpfiles │ └── main.go ├── 20-reflection ├── 1_value │ └── main.go ├── 2_assert_string │ └── main.go ├── 3_set_value │ └── main.go ├── 4_struct_to_map │ └── main.go ├── 5_map_to_struct │ └── main.go ├── 6_method_list │ └── main.go ├── go.mod └── user │ └── user.go ├── 21-codegen ├── 00-simple │ ├── command.sh │ ├── command.win.bat │ ├── example │ │ └── example.go │ ├── generate.go │ └── main.go ├── 01-bindata │ ├── main.go │ ├── static │ │ └── gopher.png │ └── static_generated.go ├── 02-embed │ ├── main.go │ └── static │ │ └── gopher.png ├── 02a-embed-fs │ ├── main.go │ └── static │ │ ├── gopher.png │ │ └── other.png ├── 03-stringer │ ├── main.go │ └── messagestatus_string.go ├── 04-jsonenums │ ├── main.go │ └── pill_jsonenums.go ├── 05-easyjson │ ├── main.go │ ├── main_test.go │ └── student │ │ ├── student.go │ │ └── student_easyjson.go ├── 06-impl │ └── main.go ├── 07-mockgen │ ├── getter.go │ ├── getter_test.go │ ├── mocks │ │ └── mock_getter.go │ └── option.go ├── 08-genny │ ├── gen-queue_generic.go │ └── queue_generic.go ├── 09-ldflags │ └── main.go ├── 10-protobuf │ ├── Person.pb.go │ ├── Person.proto │ └── main.go ├── 11-ast │ └── main.go ├── go.mod └── go.sum ├── 22-config-n-log ├── config │ ├── config.env │ ├── config.json │ ├── config.toml │ └── config.yml ├── go.mod ├── go.sum ├── jaeger │ └── docker-compose.yml └── src │ ├── 0_base │ └── main.go │ ├── 10_zap_shugar │ └── main.go │ ├── 11_zap_prod │ └── main.go │ ├── 12_zap │ ├── example_test.go │ └── main.go │ ├── 13_slog │ ├── main.go │ └── slog_test.go │ ├── 1_env │ └── main.go │ ├── 2_caarlos-env │ └── main.go │ ├── 3_confita │ └── main.go │ ├── 4_viper │ └── main.go │ ├── 4a_viper │ ├── config.yaml │ └── main.go │ ├── 5_log1 │ └── main.go │ ├── 6_log2 │ └── main.go │ ├── 7_logrus │ └── main.go │ ├── 8_zap │ └── main.go │ └── 9_zap │ └── main.go ├── 23-no-sql ├── Dockerfile ├── aerospike │ └── main.go ├── clickhouse │ └── main.go ├── docker-compose.yaml ├── go.mod ├── go.sum ├── mongo │ ├── main.go │ └── social-media │ │ └── main.go └── redis │ ├── broker │ └── main.go │ └── main.go ├── 23-profiling ├── 00_lesson │ ├── ex1_slice_test.go │ ├── ex2_to_str_test.go │ ├── ex3_conc_test.go │ ├── ex4_concat_string_test.go │ ├── ex5_match_test.go │ ├── ex6_obj_reuse_test.go │ ├── go.mod │ ├── optimization │ │ ├── go.mod │ │ ├── go.sum │ │ ├── top10.go │ │ └── top10_test.go │ └── pprofsrv │ │ └── main.go ├── 01_bench │ ├── ex.txt │ ├── exbench.go │ └── exbench_test.go ├── 02_benchpar │ ├── benchpar.go │ ├── ex.txt │ └── exbenchpar_test.go ├── 03_prealloc │ ├── prealloc.go │ └── prealloc_test.go ├── 04_reuse │ ├── reuse.go │ └── reuse_test.go ├── 05_fmtvsstrconv │ ├── fmtvsstrconv.go │ └── fmtvsstrconv_test.go ├── 06_stringsvsre │ ├── stringsvsre.go │ └── stringsvsre_test.go ├── 07_stringbuilder │ ├── stringbuilder.go │ └── stringbuilder_test.go ├── 08_syncpool │ ├── syncpool.go │ └── syncpool_test.go ├── 09_pointerkeys │ └── pointerkeys.go ├── 10_exjs │ ├── exjs.go │ ├── exjs_easyjson.go │ └── exjs_test.go ├── 11_generics │ ├── generics.go │ └── generics_test.go ├── 12_httpserver │ ├── fast.go │ ├── standard.go │ └── test.txt ├── 13_pprof_console │ ├── 13_pprof_console.test │ ├── cpu.out │ ├── help.txt │ ├── mem.out │ ├── prealloc.go │ └── prealloc_test.go ├── 14_pprof_svg_and_web │ ├── help.txt │ └── standard.go ├── 15_flamegraph │ ├── help.txt │ └── standard.go └── 16_trace │ ├── help.txt │ ├── standard.go │ └── trace.out ├── 24-context-n-net ├── 01-tcp-chat │ └── chat.go ├── 02-chat-client │ └── client.go ├── 03-udp-server │ └── udpserver.go ├── 04-udp-client │ └── client.go ├── 05-dns-resolver │ └── resolve.go ├── 06-context │ └── context.go ├── 06b-context │ └── context.go ├── 07-signal-notyfy-context │ └── signal.go ├── 08-gracefull-stop │ └── gracefullstop.go ├── 09-context-with-value │ └── context_with_value.go ├── 10-context-with-cancel │ └── context_with_cancel.go ├── 11-context-with-timeout │ └── context_with_timeout.go └── 12-context-with-deadline │ └── context-with-deadline.go ├── 25-sql ├── cmd │ └── app │ │ └── main.go ├── commands.txt ├── configs │ └── local.toml ├── go.mod ├── go.sum ├── internal │ ├── app │ │ └── app.go │ ├── config │ │ └── config.go │ └── repository │ │ ├── psql │ │ └── repository.go │ │ └── repository.go └── migrations │ └── 20200528084542_init.sql ├── 26-grpc-2 ├── chat │ ├── api │ │ ├── chat.go │ │ └── proto │ │ │ ├── chat.pb.go │ │ │ ├── chat.proto │ │ │ └── chat_grpc.pb.go │ ├── client │ │ └── main.go │ ├── go.mod │ ├── go.sum │ └── server │ │ └── main.go ├── int-sint │ ├── go.mod │ ├── go.sum │ ├── main.go │ ├── main_test.go │ └── proto │ │ ├── benchmark.pb.go │ │ └── benchmark.proto └── taskmanager │ ├── api │ ├── proto │ │ ├── taskmanager.pb.go │ │ ├── taskmanager.proto │ │ └── taskmanager_grpc.pb.go │ └── taskmanager.go │ ├── client │ └── main.go │ ├── go.mod │ ├── go.sum │ ├── internal │ └── task │ │ ├── handler.go │ │ └── service.go │ └── server │ └── main.go ├── 26-http ├── client-func-method │ └── main.go ├── client-ws │ └── main.go ├── client │ ├── main.go │ └── main_test.go ├── go.mod ├── go.sum ├── handler │ ├── handler.go │ └── handler_test.go ├── middleware-abstract │ ├── abstract_middleware.go │ ├── abstract_middleware_test.go │ └── middleware_lib.go ├── middleware │ ├── client.go │ └── server.go ├── server-mux │ └── main.go └── server │ ├── main.go │ └── server_test.go ├── 27-grpc ├── Makefile ├── api │ ├── elections-with-admin │ │ └── elections.proto │ ├── elections-with-stats │ │ └── elections.proto │ └── elections │ │ └── elections.proto ├── elections-with-admin │ ├── client │ │ └── main.go │ ├── main.go │ ├── pb │ │ ├── elections.pb.go │ │ └── elections_grpc.pb.go │ ├── service.go │ └── validate.go ├── elections-with-stats │ ├── client │ │ └── main.go │ ├── main.go │ ├── pb │ │ ├── elections.pb.go │ │ └── elections_grpc.pb.go │ └── service.go ├── elections │ ├── client │ │ └── main.go │ ├── pb │ │ ├── elections.pb.go │ │ └── elections_grpc.pb.go │ ├── server │ │ └── main.go │ └── validate │ │ └── validate.go ├── go.mod ├── go.sum ├── setup.md └── tools.go ├── 27-websockets ├── README.md └── src │ ├── 1 │ ├── go.mod │ ├── go.sum │ └── main.go │ └── 2 │ ├── client │ ├── go.mod │ ├── go.sum │ └── main.go │ └── server │ ├── go.mod │ ├── go.sum │ └── main.go ├── 29-queues ├── Makefile ├── consumer │ └── consumer.go ├── consumer_reconnect │ └── consumer.go ├── consumer_short │ ├── consumer │ │ └── consumer.go │ └── main.go ├── go.mod ├── go.sum └── producer │ ├── main.go │ ├── producer.go │ └── producer_sync_confirm.go ├── 31-integration-testing ├── Makefile ├── README.md ├── assets │ └── user_reg_event.png ├── cmd │ ├── notification-service │ │ ├── Dockerfile │ │ ├── config.go │ │ ├── go.mod │ │ ├── go.sum │ │ ├── main.go │ │ └── sender.go │ └── registration-service │ │ ├── Dockerfile │ │ ├── config.go │ │ ├── db.go │ │ ├── go.mod │ │ ├── go.sum │ │ ├── main.go │ │ ├── rmq.go │ │ └── server.go ├── config.toml ├── configs │ ├── rabbit.config │ └── rabbit.def.json ├── docker-compose.test.yml ├── docker-compose.yml ├── scripts │ └── setup.sql └── tests │ ├── Dockerfile │ ├── features │ └── notification.feature │ ├── go.mod │ ├── go.sum │ ├── main_test.go │ └── notification_test.go ├── 32-monitoring ├── Dockerfile ├── Makefile ├── docker-compose.yml ├── go.mod ├── go.sum ├── main.go ├── metrics.go └── prometheus.yaml ├── LITERATURE.md └── open-lesson └── interfaces ├── 00_intro ├── any_test.go ├── composition_test.go ├── interfaces_test.go └── receivers_test.go ├── 02_variables ├── refs_test.go └── variables_test.go ├── 03_receivers ├── dark_test.go └── receivers_test.go ├── 04_zerovalue └── zerovalue_test.go ├── 05_type_assertion └── type_assertion_test.go ├── 06_type_switch └── type_switch_test.go └── go.mod /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/.gitignore -------------------------------------------------------------------------------- /01-first-go-program/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/01-first-go-program/README.md -------------------------------------------------------------------------------- /01-first-go-program/feeds.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/01-first-go-program/feeds.go -------------------------------------------------------------------------------- /01-first-go-program/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/01-first-go-program/go.mod -------------------------------------------------------------------------------- /01-first-go-program/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/01-first-go-program/main.go -------------------------------------------------------------------------------- /01-first-go-program/searcher/rss.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/01-first-go-program/searcher/rss.go -------------------------------------------------------------------------------- /01-first-go-program/searcher/search.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/01-first-go-program/searcher/search.go -------------------------------------------------------------------------------- /03-unit-testing/mock/db.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock/db.go -------------------------------------------------------------------------------- /03-unit-testing/mock/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock/go.mod -------------------------------------------------------------------------------- /03-unit-testing/mock/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock/go.sum -------------------------------------------------------------------------------- /03-unit-testing/mock/mock_db_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock/mock_db_test.go -------------------------------------------------------------------------------- /03-unit-testing/mock/models.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock/models.go -------------------------------------------------------------------------------- /03-unit-testing/mock/store.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock/store.go -------------------------------------------------------------------------------- /03-unit-testing/mock/store_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock/store_test.go -------------------------------------------------------------------------------- /03-unit-testing/mock_faker/db.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock_faker/db.go -------------------------------------------------------------------------------- /03-unit-testing/mock_faker/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock_faker/go.mod -------------------------------------------------------------------------------- /03-unit-testing/mock_faker/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock_faker/go.sum -------------------------------------------------------------------------------- /03-unit-testing/mock_faker/mock_db_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock_faker/mock_db_test.go -------------------------------------------------------------------------------- /03-unit-testing/mock_faker/models.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock_faker/models.go -------------------------------------------------------------------------------- /03-unit-testing/mock_faker/store.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock_faker/store.go -------------------------------------------------------------------------------- /03-unit-testing/mock_faker/store_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock_faker/store_test.go -------------------------------------------------------------------------------- /03-unit-testing/mock_suite/db.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock_suite/db.go -------------------------------------------------------------------------------- /03-unit-testing/mock_suite/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock_suite/go.mod -------------------------------------------------------------------------------- /03-unit-testing/mock_suite/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock_suite/go.sum -------------------------------------------------------------------------------- /03-unit-testing/mock_suite/mock_db_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock_suite/mock_db_test.go -------------------------------------------------------------------------------- /03-unit-testing/mock_suite/models.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock_suite/models.go -------------------------------------------------------------------------------- /03-unit-testing/mock_suite/store.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock_suite/store.go -------------------------------------------------------------------------------- /03-unit-testing/mock_suite/store_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/mock_suite/store_test.go -------------------------------------------------------------------------------- /03-unit-testing/time/clock_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/time/clock_test.go -------------------------------------------------------------------------------- /03-unit-testing/time/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/time/go.mod -------------------------------------------------------------------------------- /03-unit-testing/time/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/time/go.sum -------------------------------------------------------------------------------- /03-unit-testing/time/timex_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/03-unit-testing/time/timex_test.go -------------------------------------------------------------------------------- /04-simple-data-types/example/example.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/04-simple-data-types/example/example.go -------------------------------------------------------------------------------- /04-simple-data-types/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/04-simple-data-types/go.mod -------------------------------------------------------------------------------- /04-simple-data-types/go.sum: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /04-simple-data-types/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/04-simple-data-types/main.go -------------------------------------------------------------------------------- /04-simple-data-types/runes/runes.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/04-simple-data-types/runes/runes.go -------------------------------------------------------------------------------- /05-structures/child/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-structures/child/main.go -------------------------------------------------------------------------------- /05-structures/country/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-structures/country/main.go -------------------------------------------------------------------------------- /05-structures/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/OtusGolang/webinars_practical_part/05-structures 2 | 3 | go 1.16 4 | -------------------------------------------------------------------------------- /05-structures/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-structures/main.go -------------------------------------------------------------------------------- /05-structures/market/market.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-structures/market/market.go -------------------------------------------------------------------------------- /05-structures/pets/pets.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-structures/pets/pets.go -------------------------------------------------------------------------------- /05-structures/stack/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-structures/stack/main.go -------------------------------------------------------------------------------- /05-structures/user.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-structures/user.go -------------------------------------------------------------------------------- /05-testing/asserts_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-testing/asserts_test.go -------------------------------------------------------------------------------- /05-testing/err_and_fatal_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-testing/err_and_fatal_test.go -------------------------------------------------------------------------------- /05-testing/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-testing/go.mod -------------------------------------------------------------------------------- /05-testing/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-testing/go.sum -------------------------------------------------------------------------------- /05-testing/golden_files/golden_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-testing/golden_files/golden_test.go -------------------------------------------------------------------------------- /05-testing/golden_files/testdata/Aunt Mildred.golden: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-testing/golden_files/testdata/Aunt Mildred.golden -------------------------------------------------------------------------------- /05-testing/golden_files/testdata/Cousin Rodney.golden: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-testing/golden_files/testdata/Cousin Rodney.golden -------------------------------------------------------------------------------- /05-testing/golden_files/testdata/Uncle John.golden: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-testing/golden_files/testdata/Uncle John.golden -------------------------------------------------------------------------------- /05-testing/titlecase_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-testing/titlecase_test.go -------------------------------------------------------------------------------- /05-testing/utils.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/05-testing/utils.go -------------------------------------------------------------------------------- /08-errors-handling/01_std_errors/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/01_std_errors/main.go -------------------------------------------------------------------------------- /08-errors-handling/02_err_is_values/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/02_err_is_values/main.go -------------------------------------------------------------------------------- /08-errors-handling/03_sentinel_errors/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/03_sentinel_errors/main.go -------------------------------------------------------------------------------- /08-errors-handling/04_err_type/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/04_err_type/main.go -------------------------------------------------------------------------------- /08-errors-handling/05_pkg_errors_wrap/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/05_pkg_errors_wrap/main.go -------------------------------------------------------------------------------- /08-errors-handling/06_pkg_errors_cause/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/06_pkg_errors_cause/main.go -------------------------------------------------------------------------------- /08-errors-handling/07_fmt_errorf/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/07_fmt_errorf/main.go -------------------------------------------------------------------------------- /08-errors-handling/08_errors_unwrap/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/08_errors_unwrap/main.go -------------------------------------------------------------------------------- /08-errors-handling/09_defer/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/09_defer/main.go -------------------------------------------------------------------------------- /08-errors-handling/10_defer/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/10_defer/main.go -------------------------------------------------------------------------------- /08-errors-handling/11_panic_handle/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/11_panic_handle/main.go -------------------------------------------------------------------------------- /08-errors-handling/13_multierr/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/13_multierr/main.go -------------------------------------------------------------------------------- /08-errors-handling/13_multierr_legacy/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/13_multierr_legacy/main.go -------------------------------------------------------------------------------- /08-errors-handling/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/README.md -------------------------------------------------------------------------------- /08-errors-handling/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/go.mod -------------------------------------------------------------------------------- /08-errors-handling/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/08-errors-handling/go.sum -------------------------------------------------------------------------------- /09-interfaces-p1/app.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-interfaces-p1/app.go -------------------------------------------------------------------------------- /09-interfaces-p1/example/example.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-interfaces-p1/example/example.go -------------------------------------------------------------------------------- /09-interfaces-p1/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/OtusGolang/webinars_practical_part/09-interfaces 2 | 3 | go 1.14 4 | -------------------------------------------------------------------------------- /09-interfaces-p1/logger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-interfaces-p1/logger.go -------------------------------------------------------------------------------- /09-interfaces-p1/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-interfaces-p1/main.go -------------------------------------------------------------------------------- /09-packages/example/bin/mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/bin/mod -------------------------------------------------------------------------------- /09-packages/example/ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/ex -------------------------------------------------------------------------------- /09-packages/example/math2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/math2 -------------------------------------------------------------------------------- /09-packages/example/pkg/darwin_amd64/calc.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/darwin_amd64/calc.a -------------------------------------------------------------------------------- /09-packages/example/pkg/darwin_amd64/calc/internal.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/darwin_amd64/calc/internal.a -------------------------------------------------------------------------------- /09-packages/example/pkg/darwin_amd64/nousing.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/darwin_amd64/nousing.a -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/list: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/list -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/list.lock: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/v1.0.0.info: -------------------------------------------------------------------------------- 1 | {"Version":"v1.0.0","Time":"2019-06-27T18:08:38Z"} -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/v1.0.0.lock: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/v1.0.0.mod: -------------------------------------------------------------------------------- 1 | module github.com/BHYCHIK/testmod 2 | 3 | go 1.12 4 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/v1.0.0.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/v1.0.0.zip -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/v1.0.0.ziphash: -------------------------------------------------------------------------------- 1 | h1:ZD/UgYAf6bqlduk7l05KdZ3ByGNmRG/VT4GFa6NY9pU= -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/v1.0.1.info: -------------------------------------------------------------------------------- 1 | {"Version":"v1.0.1","Time":"2019-06-27T18:15:36Z"} -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/v1.0.1.lock: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/v1.0.1.mod: -------------------------------------------------------------------------------- 1 | module github.com/BHYCHIK/testmod 2 | 3 | go 1.12 4 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/v1.0.1.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/v1.0.1.zip -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/@v/v1.0.1.ziphash: -------------------------------------------------------------------------------- 1 | h1:hiufhPz6B+H7oCfas4W7tkFDkKKnx1J1ch2nHBWeNOs= -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/v2/@v/list: -------------------------------------------------------------------------------- 1 | v2.0.2 2 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/v2/@v/list.lock: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/v2/@v/v2.0.2.info: -------------------------------------------------------------------------------- 1 | {"Version":"v2.0.2","Time":"2019-06-27T18:26:36Z"} -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/v2/@v/v2.0.2.lock: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/v2/@v/v2.0.2.mod: -------------------------------------------------------------------------------- 1 | module github.com/BHYCHIK/testmod/v2 2 | 3 | go 1.12 4 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/v2/@v/v2.0.2.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/v2/@v/v2.0.2.zip -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/download/github.com/!b!h!y!c!h!i!k/testmod/v2/@v/v2.0.2.ziphash: -------------------------------------------------------------------------------- 1 | h1:wzOgDwFT+LRyEveQAAdesosIfXzCSNcOKgzoDZC8E6M= -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/lock: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572.info: -------------------------------------------------------------------------------- 1 | git2:https://github.com/BHYCHIK/testmod -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572.lock: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/FETCH_HEAD: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/FETCH_HEAD -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/HEAD: -------------------------------------------------------------------------------- 1 | ref: refs/heads/master 2 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/config -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/description: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/description -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/applypatch-msg.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/applypatch-msg.sample -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/commit-msg.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/commit-msg.sample -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/post-update.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/post-update.sample -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/pre-applypatch.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/pre-applypatch.sample -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/pre-commit.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/pre-commit.sample -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/pre-push.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/pre-push.sample -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/pre-rebase.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/pre-rebase.sample -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/prepare-commit-msg.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/prepare-commit-msg.sample -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/update.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/hooks/update.sample -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/info/attributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/info/attributes -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/info/exclude: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/info/exclude -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/02/ea74b485a8afa406a38563367f3d2b539ffec8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/02/ea74b485a8afa406a38563367f3d2b539ffec8 -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/07/5c39d0531a595a3941f3f7409ce7044cb32ec9: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/07/5c39d0531a595a3941f3f7409ce7044cb32ec9 -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/07/98c93fd1e96d6b15821aa8753744620636cfd1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/07/98c93fd1e96d6b15821aa8753744620636cfd1 -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/2a/65dc2033ef649d8dd7e61a9ebb27a79d1291ac: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/2a/65dc2033ef649d8dd7e61a9ebb27a79d1291ac -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/2f/49ad06a932c5b4a4cd646842582ac797ece30d: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/2f/49ad06a932c5b4a4cd646842582ac797ece30d -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/39/e6bbff8dc4ac0973142faa7cfd39d211539a36: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/39/e6bbff8dc4ac0973142faa7cfd39d211539a36 -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/4c/e114ad809cacceedde04f6c64b20417e153fd2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/4c/e114ad809cacceedde04f6c64b20417e153fd2 -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/57/f9931e1d91ee5c034bd1d2b51ee73927c9a08f: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/57/f9931e1d91ee5c034bd1d2b51ee73927c9a08f -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/65/2063eeeb250e50bc7c2ad6c661ab340fcb7d28: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/65/2063eeeb250e50bc7c2ad6c661ab340fcb7d28 -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/7e/4c735d3464013cc11b0099b9320fd849e900df: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/7e/4c735d3464013cc11b0099b9320fd849e900df -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/85/c155f96fdb72d1a4936d56376edbe38c72f986: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/85/c155f96fdb72d1a4936d56376edbe38c72f986 -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/ad/79b28f71daa47a2759b47511800457af0f0109: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/ad/79b28f71daa47a2759b47511800457af0f0109 -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/b0/108ce3a7beec624243c91fe1989ed20fcc01b1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/b0/108ce3a7beec624243c91fe1989ed20fcc01b1 -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/b9/7a03123ac2c017ce5918aa80eea113e019b9d3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/b9/7a03123ac2c017ce5918aa80eea113e019b9d3 -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/c9/5cf571c583ff18ec1224ba4b26c2a3eec6881f: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/c9/5cf571c583ff18ec1224ba4b26c2a3eec6881f -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/d5/93a25337a23624a6c68a063ae613f9100e85f2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/d5/93a25337a23624a6c68a063ae613f9100e85f2 -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/ed/56ae4bc0b05310eeeab2d46b04d51c293c6243: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/objects/ed/56ae4bc0b05310eeeab2d46b04d51c293c6243 -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/refs/tags/v1.0.0: -------------------------------------------------------------------------------- 1 | 7e4c735d3464013cc11b0099b9320fd849e900df 2 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/refs/tags/v1.0.1: -------------------------------------------------------------------------------- 1 | b97a03123ac2c017ce5918aa80eea113e019b9d3 2 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/refs/tags/v2.0.0: -------------------------------------------------------------------------------- 1 | 4ce114ad809cacceedde04f6c64b20417e153fd2 2 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/refs/tags/v2.0.1: -------------------------------------------------------------------------------- 1 | 0798c93fd1e96d6b15821aa8753744620636cfd1 2 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/refs/tags/v2.0.2: -------------------------------------------------------------------------------- 1 | b0108ce3a7beec624243c91fe1989ed20fcc01b1 2 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/shallow: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/cache/vcs/cb23a87db31f5113694f36f8e0fda5feaa943a461fc103a2cbb167f55742d572/shallow -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/github.com/!b!h!y!c!h!i!k/testmod/v2@v2.0.2/README.md: -------------------------------------------------------------------------------- 1 | # testmod -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/github.com/!b!h!y!c!h!i!k/testmod/v2@v2.0.2/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/BHYCHIK/testmod/v2 2 | 3 | go 1.12 4 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/github.com/!b!h!y!c!h!i!k/testmod/v2@v2.0.2/test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/github.com/!b!h!y!c!h!i!k/testmod/v2@v2.0.2/test.go -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/github.com/!b!h!y!c!h!i!k/testmod@v1.0.0/README.md: -------------------------------------------------------------------------------- 1 | # testmod -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/github.com/!b!h!y!c!h!i!k/testmod@v1.0.0/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/BHYCHIK/testmod 2 | 3 | go 1.12 4 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/github.com/!b!h!y!c!h!i!k/testmod@v1.0.0/test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/github.com/!b!h!y!c!h!i!k/testmod@v1.0.0/test.go -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/github.com/!b!h!y!c!h!i!k/testmod@v1.0.1/README.md: -------------------------------------------------------------------------------- 1 | # testmod -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/github.com/!b!h!y!c!h!i!k/testmod@v1.0.1/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/BHYCHIK/testmod 2 | 3 | go 1.12 4 | -------------------------------------------------------------------------------- /09-packages/example/pkg/mod/github.com/!b!h!y!c!h!i!k/testmod@v1.0.1/test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/pkg/mod/github.com/!b!h!y!c!h!i!k/testmod@v1.0.1/test.go -------------------------------------------------------------------------------- /09-packages/example/src/calc/antisin.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/calc/antisin.go -------------------------------------------------------------------------------- /09-packages/example/src/calc/internal/internal.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/calc/internal/internal.go -------------------------------------------------------------------------------- /09-packages/example/src/calc/mult.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/calc/mult.go -------------------------------------------------------------------------------- /09-packages/example/src/calc/sum.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/calc/sum.go -------------------------------------------------------------------------------- /09-packages/example/src/ex/ex.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/ex/ex.go -------------------------------------------------------------------------------- /09-packages/example/src/math2/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/math2/main.go -------------------------------------------------------------------------------- /09-packages/example/src/nousing/no.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/nousing/no.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/Gopkg.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/Gopkg.lock -------------------------------------------------------------------------------- /09-packages/example/src/testsql/Gopkg.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/Gopkg.toml -------------------------------------------------------------------------------- /09-packages/example/src/testsql/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/main.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/.gitignore -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/.travis.yml -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/AUTHORS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/AUTHORS -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/CHANGELOG.md -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/CONTRIBUTING.md -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/LICENSE -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/README.md -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/appengine.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/appengine.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/auth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/auth.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/buffer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/buffer.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/collations.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/collations.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/connection.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/connection.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/connection_go18.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/connection_go18.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/const.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/const.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/driver.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/driver.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/dsn.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/dsn.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/errors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/errors.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/fields.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/fields.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/infile.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/infile.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/packets.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/packets.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/result.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/result.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/rows.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/rows.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/statement.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/statement.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/transaction.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/transaction.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/utils.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/utils.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/utils_go17.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/utils_go17.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/utils_go18.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/github.com/go-sql-driver/mysql/utils_go18.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/google.golang.org/appengine/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/google.golang.org/appengine/LICENSE -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/google.golang.org/appengine/cloudsql/cloudsql.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/google.golang.org/appengine/cloudsql/cloudsql.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/google.golang.org/appengine/cloudsql/cloudsql_classic.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/google.golang.org/appengine/cloudsql/cloudsql_classic.go -------------------------------------------------------------------------------- /09-packages/example/src/testsql/vendor/google.golang.org/appengine/cloudsql/cloudsql_vm.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/example/src/testsql/vendor/google.golang.org/appengine/cloudsql/cloudsql_vm.go -------------------------------------------------------------------------------- /09-packages/testprog/go.mod: -------------------------------------------------------------------------------- 1 | module mod 2 | 3 | go 1.12 4 | 5 | require github.com/BHYCHIK/testmod/v2 v2.0.2 6 | -------------------------------------------------------------------------------- /09-packages/testprog/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/testprog/go.sum -------------------------------------------------------------------------------- /09-packages/testprog/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/testprog/main.go -------------------------------------------------------------------------------- /09-packages/testprog/mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/testprog/mod -------------------------------------------------------------------------------- /09-packages/testprog/vendor/github.com/BHYCHIK/testmod/v2/README.md: -------------------------------------------------------------------------------- 1 | # testmod -------------------------------------------------------------------------------- /09-packages/testprog/vendor/github.com/BHYCHIK/testmod/v2/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/BHYCHIK/testmod/v2 2 | 3 | go 1.12 4 | -------------------------------------------------------------------------------- /09-packages/testprog/vendor/github.com/BHYCHIK/testmod/v2/test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/testprog/vendor/github.com/BHYCHIK/testmod/v2/test.go -------------------------------------------------------------------------------- /09-packages/testprog/vendor/modules.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/09-packages/testprog/vendor/modules.txt -------------------------------------------------------------------------------- /10-interfaces-p2/01-nil/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/10-interfaces-p2/01-nil/main.go -------------------------------------------------------------------------------- /10-interfaces-p2/02-limit-reader/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/10-interfaces-p2/02-limit-reader/main.go -------------------------------------------------------------------------------- /10-interfaces-p2/03-type-assertion/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/10-interfaces-p2/03-type-assertion/main.go -------------------------------------------------------------------------------- /10-interfaces-p2/04-type-switch/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/10-interfaces-p2/04-type-switch/main.go -------------------------------------------------------------------------------- /10-interfaces-p2/05-privates/contract/contgract.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/10-interfaces-p2/05-privates/contract/contgract.go -------------------------------------------------------------------------------- /10-interfaces-p2/05-privates/contract/int_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/10-interfaces-p2/05-privates/contract/int_impl.go -------------------------------------------------------------------------------- /10-interfaces-p2/05-privates/impl/ext_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/10-interfaces-p2/05-privates/impl/ext_impl.go -------------------------------------------------------------------------------- /10-interfaces-p2/05-privates/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/10-interfaces-p2/05-privates/main.go -------------------------------------------------------------------------------- /10-interfaces-p2/05-sort/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/10-interfaces-p2/05-sort/main.go -------------------------------------------------------------------------------- /10-interfaces-p2/06-refs/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/10-interfaces-p2/06-refs/main_test.go -------------------------------------------------------------------------------- /10-interfaces-p2/example/main.go: -------------------------------------------------------------------------------- 1 | package example 2 | -------------------------------------------------------------------------------- /10-interfaces-p2/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/10-interfaces-p2/go.mod -------------------------------------------------------------------------------- /12-sync-primitives-p1/race/go.mod: -------------------------------------------------------------------------------- 1 | module otus.ru/race 2 | 3 | go 1.15 4 | -------------------------------------------------------------------------------- /12-sync-primitives-p1/race/race.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/12-sync-primitives-p1/race/race.go -------------------------------------------------------------------------------- /12-sync-primitives-p1/race_limit/go.mod: -------------------------------------------------------------------------------- 1 | module otus.ru/race_limit 2 | 3 | go 1.15 4 | -------------------------------------------------------------------------------- /12-sync-primitives-p1/race_limit/race_limit.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/12-sync-primitives-p1/race_limit/race_limit.go -------------------------------------------------------------------------------- /13-sync-primitives-p2/read_race/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/13-sync-primitives-p2/read_race/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/1_adhoc/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/1_adhoc/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/2_lexical/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/2_lexical/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/3_1_leak/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/3_1_leak/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/3_2_done_ch/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/3_2_done_ch/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/3_3_close_data_ch/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/3_3_close_data_ch/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/4_or_magic/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/4_or_magic/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/4_or_magic/or1.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/4_or_magic/or1.go -------------------------------------------------------------------------------- /14-concurrency-patterns/5_1_handle_err_in_place/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/5_1_handle_err_in_place/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/5_2_throw_err_above/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/5_2_throw_err_above/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/6_1_pipeline/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/6_1_pipeline/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/6_2_stage_constructor/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/6_2_stage_constructor/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/6_3_stream_pipeline/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/6_3_stream_pipeline/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/6_4_stream_pipeline_with_done/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/6_4_stream_pipeline_with_done/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/8_useful_generators/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/8_useful_generators/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/9_1_prime_finding/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/9_1_prime_finding/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/9_1_prime_finding/prime_finder.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/9_1_prime_finding/prime_finder.go -------------------------------------------------------------------------------- /14-concurrency-patterns/9_1_prime_finding/repeat_fn.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/9_1_prime_finding/repeat_fn.go -------------------------------------------------------------------------------- /14-concurrency-patterns/9_1_prime_finding/take.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/9_1_prime_finding/take.go -------------------------------------------------------------------------------- /14-concurrency-patterns/9_1_prime_finding/to_int.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/9_1_prime_finding/to_int.go -------------------------------------------------------------------------------- /14-concurrency-patterns/9_2_fanin_fanout/fan_in.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/9_2_fanin_fanout/fan_in.go -------------------------------------------------------------------------------- /14-concurrency-patterns/9_2_fanin_fanout/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/9_2_fanin_fanout/main.go -------------------------------------------------------------------------------- /14-concurrency-patterns/9_2_fanin_fanout/prime_finder.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/9_2_fanin_fanout/prime_finder.go -------------------------------------------------------------------------------- /14-concurrency-patterns/9_2_fanin_fanout/repeat_fn.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/9_2_fanin_fanout/repeat_fn.go -------------------------------------------------------------------------------- /14-concurrency-patterns/9_2_fanin_fanout/take.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/9_2_fanin_fanout/take.go -------------------------------------------------------------------------------- /14-concurrency-patterns/9_2_fanin_fanout/to_int.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/9_2_fanin_fanout/to_int.go -------------------------------------------------------------------------------- /14-concurrency-patterns/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/14-concurrency-patterns/go.mod -------------------------------------------------------------------------------- /16-internals-memory/halfsum/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/16-internals-memory/halfsum/main.go -------------------------------------------------------------------------------- /16-internals-memory/heap/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/16-internals-memory/heap/main.go -------------------------------------------------------------------------------- /16-internals-memory/stack/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/16-internals-memory/stack/main.go -------------------------------------------------------------------------------- /16-internals-memory/stack_pointer/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/16-internals-memory/stack_pointer/main.go -------------------------------------------------------------------------------- /17-input-output/exampletest/example_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/17-input-output/exampletest/example_test.go -------------------------------------------------------------------------------- /17-input-output/exampletest/testdata/example.txt: -------------------------------------------------------------------------------- 1 | hello world 2 | -------------------------------------------------------------------------------- /17-input-output/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/17-input-output/go.mod -------------------------------------------------------------------------------- /17-input-output/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/17-input-output/go.sum -------------------------------------------------------------------------------- /17-input-output/readfile/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/17-input-output/readfile/main.go -------------------------------------------------------------------------------- /17-input-output/regex/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/17-input-output/regex/main.go -------------------------------------------------------------------------------- /17-input-output/writefile/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/17-input-output/writefile/main.go -------------------------------------------------------------------------------- /17-reflection/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/17-reflection/main_test.go -------------------------------------------------------------------------------- /18-format/base64/base64.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/base64/base64.go -------------------------------------------------------------------------------- /18-format/base64flow/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/base64flow/main.go -------------------------------------------------------------------------------- /18-format/jsonex/0_json.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/jsonex/0_json.go -------------------------------------------------------------------------------- /18-format/jsonex/1_json.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/jsonex/1_json.go -------------------------------------------------------------------------------- /18-format/jsonex/2_json.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/jsonex/2_json.go -------------------------------------------------------------------------------- /18-format/jsonex/3_different_rules.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/jsonex/3_different_rules.go -------------------------------------------------------------------------------- /18-format/jsonex/4_recursive_problem.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/jsonex/4_recursive_problem.go -------------------------------------------------------------------------------- /18-format/jsonex/5_raw_message.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/jsonex/5_raw_message.go -------------------------------------------------------------------------------- /18-format/msgpackex/ex1.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/msgpackex/ex1.go -------------------------------------------------------------------------------- /18-format/protobufex/gen.sh: -------------------------------------------------------------------------------- 1 | protoc --go_out=. *.proto 2 | -------------------------------------------------------------------------------- /18-format/protobufex/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/protobufex/main.go -------------------------------------------------------------------------------- /18-format/protobufex/person.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/protobufex/person.pb.go -------------------------------------------------------------------------------- /18-format/protobufex/person.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/protobufex/person.proto -------------------------------------------------------------------------------- /18-format/xmlex/sax.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/xmlex/sax.go -------------------------------------------------------------------------------- /18-format/xmlex/xml1.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/xmlex/xml1.go -------------------------------------------------------------------------------- /18-format/xmlex/xml2.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/18-format/xmlex/xml2.go -------------------------------------------------------------------------------- /19-clean-architecture/.gitignore: -------------------------------------------------------------------------------- 1 | clncnd 2 | -------------------------------------------------------------------------------- /19-clean-architecture/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/Makefile -------------------------------------------------------------------------------- /19-clean-architecture/api/api.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/api/api.proto -------------------------------------------------------------------------------- /19-clean-architecture/cmd/grpc_client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/cmd/grpc_client.go -------------------------------------------------------------------------------- /19-clean-architecture/cmd/grpc_server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/cmd/grpc_server.go -------------------------------------------------------------------------------- /19-clean-architecture/cmd/root.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/cmd/root.go -------------------------------------------------------------------------------- /19-clean-architecture/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/go.mod -------------------------------------------------------------------------------- /19-clean-architecture/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/go.sum -------------------------------------------------------------------------------- /19-clean-architecture/internal/adapters/grpc/api/api.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/internal/adapters/grpc/api/api.pb.go -------------------------------------------------------------------------------- /19-clean-architecture/internal/adapters/grpc/api/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/internal/adapters/grpc/api/server.go -------------------------------------------------------------------------------- /19-clean-architecture/internal/adapters/maindb/maindb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/internal/adapters/maindb/maindb.go -------------------------------------------------------------------------------- /19-clean-architecture/internal/domain/entities/event.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/internal/domain/entities/event.go -------------------------------------------------------------------------------- /19-clean-architecture/internal/domain/errors/error.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/internal/domain/errors/error.go -------------------------------------------------------------------------------- /19-clean-architecture/internal/domain/interfaces/event_storage.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/internal/domain/interfaces/event_storage.go -------------------------------------------------------------------------------- /19-clean-architecture/internal/domain/usecases/event.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/internal/domain/usecases/event.go -------------------------------------------------------------------------------- /19-clean-architecture/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/main.go -------------------------------------------------------------------------------- /19-clean-architecture/sql/001.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/sql/001.sql -------------------------------------------------------------------------------- /19-clean-architecture/sql/002.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-clean-architecture/sql/002.sql -------------------------------------------------------------------------------- /19-os/cmd/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/cmd/main.go -------------------------------------------------------------------------------- /19-os/cmd_pipe/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/cmd_pipe/main.go -------------------------------------------------------------------------------- /19-os/cobra/git2/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/cobra/git2/LICENSE -------------------------------------------------------------------------------- /19-os/cobra/git2/cmd/commit.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/cobra/git2/cmd/commit.go -------------------------------------------------------------------------------- /19-os/cobra/git2/cmd/root.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/cobra/git2/cmd/root.go -------------------------------------------------------------------------------- /19-os/cobra/git2/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/cobra/git2/go.mod -------------------------------------------------------------------------------- /19-os/cobra/git2/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/cobra/git2/go.sum -------------------------------------------------------------------------------- /19-os/cobra/git2/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/cobra/git2/main.go -------------------------------------------------------------------------------- /19-os/env/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/env/main.go -------------------------------------------------------------------------------- /19-os/flag/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/flag/main.go -------------------------------------------------------------------------------- /19-os/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/go.mod -------------------------------------------------------------------------------- /19-os/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/go.sum -------------------------------------------------------------------------------- /19-os/pflag/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/pflag/main.go -------------------------------------------------------------------------------- /19-os/safefile/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/safefile/main.go -------------------------------------------------------------------------------- /19-os/signal/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/signal/main.go -------------------------------------------------------------------------------- /19-os/tmpfiles/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/19-os/tmpfiles/main.go -------------------------------------------------------------------------------- /20-reflection/1_value/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/20-reflection/1_value/main.go -------------------------------------------------------------------------------- /20-reflection/2_assert_string/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/20-reflection/2_assert_string/main.go -------------------------------------------------------------------------------- /20-reflection/3_set_value/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/20-reflection/3_set_value/main.go -------------------------------------------------------------------------------- /20-reflection/4_struct_to_map/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/20-reflection/4_struct_to_map/main.go -------------------------------------------------------------------------------- /20-reflection/5_map_to_struct/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/20-reflection/5_map_to_struct/main.go -------------------------------------------------------------------------------- /20-reflection/6_method_list/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/20-reflection/6_method_list/main.go -------------------------------------------------------------------------------- /20-reflection/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/OtusGolang/webinars_practical_part/20-reflection 2 | 3 | go 1.16 4 | -------------------------------------------------------------------------------- /20-reflection/user/user.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/20-reflection/user/user.go -------------------------------------------------------------------------------- /21-codegen/00-simple/command.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | echo "Hello, world!" 3 | -------------------------------------------------------------------------------- /21-codegen/00-simple/command.win.bat: -------------------------------------------------------------------------------- 1 | echo "Hello, world!" 2 | -------------------------------------------------------------------------------- /21-codegen/00-simple/example/example.go: -------------------------------------------------------------------------------- 1 | package example 2 | 3 | //go:generate bye 4 | -------------------------------------------------------------------------------- /21-codegen/00-simple/generate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/00-simple/generate.go -------------------------------------------------------------------------------- /21-codegen/00-simple/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/00-simple/main.go -------------------------------------------------------------------------------- /21-codegen/01-bindata/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/01-bindata/main.go -------------------------------------------------------------------------------- /21-codegen/01-bindata/static/gopher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/01-bindata/static/gopher.png -------------------------------------------------------------------------------- /21-codegen/01-bindata/static_generated.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/01-bindata/static_generated.go -------------------------------------------------------------------------------- /21-codegen/02-embed/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/02-embed/main.go -------------------------------------------------------------------------------- /21-codegen/02-embed/static/gopher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/02-embed/static/gopher.png -------------------------------------------------------------------------------- /21-codegen/02a-embed-fs/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/02a-embed-fs/main.go -------------------------------------------------------------------------------- /21-codegen/02a-embed-fs/static/gopher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/02a-embed-fs/static/gopher.png -------------------------------------------------------------------------------- /21-codegen/02a-embed-fs/static/other.png: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /21-codegen/03-stringer/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/03-stringer/main.go -------------------------------------------------------------------------------- /21-codegen/03-stringer/messagestatus_string.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/03-stringer/messagestatus_string.go -------------------------------------------------------------------------------- /21-codegen/04-jsonenums/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/04-jsonenums/main.go -------------------------------------------------------------------------------- /21-codegen/04-jsonenums/pill_jsonenums.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/04-jsonenums/pill_jsonenums.go -------------------------------------------------------------------------------- /21-codegen/05-easyjson/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/05-easyjson/main.go -------------------------------------------------------------------------------- /21-codegen/05-easyjson/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/05-easyjson/main_test.go -------------------------------------------------------------------------------- /21-codegen/05-easyjson/student/student.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/05-easyjson/student/student.go -------------------------------------------------------------------------------- /21-codegen/05-easyjson/student/student_easyjson.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/05-easyjson/student/student_easyjson.go -------------------------------------------------------------------------------- /21-codegen/06-impl/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/06-impl/main.go -------------------------------------------------------------------------------- /21-codegen/07-mockgen/getter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/07-mockgen/getter.go -------------------------------------------------------------------------------- /21-codegen/07-mockgen/getter_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/07-mockgen/getter_test.go -------------------------------------------------------------------------------- /21-codegen/07-mockgen/mocks/mock_getter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/07-mockgen/mocks/mock_getter.go -------------------------------------------------------------------------------- /21-codegen/07-mockgen/option.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/07-mockgen/option.go -------------------------------------------------------------------------------- /21-codegen/08-genny/gen-queue_generic.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/08-genny/gen-queue_generic.go -------------------------------------------------------------------------------- /21-codegen/08-genny/queue_generic.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/08-genny/queue_generic.go -------------------------------------------------------------------------------- /21-codegen/09-ldflags/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/09-ldflags/main.go -------------------------------------------------------------------------------- /21-codegen/10-protobuf/Person.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/10-protobuf/Person.pb.go -------------------------------------------------------------------------------- /21-codegen/10-protobuf/Person.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/10-protobuf/Person.proto -------------------------------------------------------------------------------- /21-codegen/10-protobuf/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/10-protobuf/main.go -------------------------------------------------------------------------------- /21-codegen/11-ast/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/11-ast/main.go -------------------------------------------------------------------------------- /21-codegen/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/go.mod -------------------------------------------------------------------------------- /21-codegen/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/21-codegen/go.sum -------------------------------------------------------------------------------- /22-config-n-log/config/config.env: -------------------------------------------------------------------------------- 1 | HOST=localhost 2 | PORT=98888 3 | -------------------------------------------------------------------------------- /22-config-n-log/config/config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/config/config.json -------------------------------------------------------------------------------- /22-config-n-log/config/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/config/config.toml -------------------------------------------------------------------------------- /22-config-n-log/config/config.yml: -------------------------------------------------------------------------------- 1 | service_name: go-is-very-awesome 2 | -------------------------------------------------------------------------------- /22-config-n-log/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/go.mod -------------------------------------------------------------------------------- /22-config-n-log/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/go.sum -------------------------------------------------------------------------------- /22-config-n-log/jaeger/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/jaeger/docker-compose.yml -------------------------------------------------------------------------------- /22-config-n-log/src/0_base/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/0_base/main.go -------------------------------------------------------------------------------- /22-config-n-log/src/10_zap_shugar/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/10_zap_shugar/main.go -------------------------------------------------------------------------------- /22-config-n-log/src/11_zap_prod/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/11_zap_prod/main.go -------------------------------------------------------------------------------- /22-config-n-log/src/12_zap/example_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/12_zap/example_test.go -------------------------------------------------------------------------------- /22-config-n-log/src/12_zap/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/12_zap/main.go -------------------------------------------------------------------------------- /22-config-n-log/src/13_slog/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/13_slog/main.go -------------------------------------------------------------------------------- /22-config-n-log/src/13_slog/slog_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/13_slog/slog_test.go -------------------------------------------------------------------------------- /22-config-n-log/src/1_env/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/1_env/main.go -------------------------------------------------------------------------------- /22-config-n-log/src/2_caarlos-env/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/2_caarlos-env/main.go -------------------------------------------------------------------------------- /22-config-n-log/src/3_confita/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/3_confita/main.go -------------------------------------------------------------------------------- /22-config-n-log/src/4_viper/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/4_viper/main.go -------------------------------------------------------------------------------- /22-config-n-log/src/4a_viper/config.yaml: -------------------------------------------------------------------------------- 1 | # url: "fromyaml.com" -------------------------------------------------------------------------------- /22-config-n-log/src/4a_viper/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/4a_viper/main.go -------------------------------------------------------------------------------- /22-config-n-log/src/5_log1/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/5_log1/main.go -------------------------------------------------------------------------------- /22-config-n-log/src/6_log2/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/6_log2/main.go -------------------------------------------------------------------------------- /22-config-n-log/src/7_logrus/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/7_logrus/main.go -------------------------------------------------------------------------------- /22-config-n-log/src/8_zap/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/8_zap/main.go -------------------------------------------------------------------------------- /22-config-n-log/src/9_zap/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/22-config-n-log/src/9_zap/main.go -------------------------------------------------------------------------------- /23-no-sql/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-no-sql/Dockerfile -------------------------------------------------------------------------------- /23-no-sql/aerospike/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-no-sql/aerospike/main.go -------------------------------------------------------------------------------- /23-no-sql/clickhouse/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-no-sql/clickhouse/main.go -------------------------------------------------------------------------------- /23-no-sql/docker-compose.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-no-sql/docker-compose.yaml -------------------------------------------------------------------------------- /23-no-sql/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-no-sql/go.mod -------------------------------------------------------------------------------- /23-no-sql/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-no-sql/go.sum -------------------------------------------------------------------------------- /23-no-sql/mongo/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-no-sql/mongo/main.go -------------------------------------------------------------------------------- /23-no-sql/mongo/social-media/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-no-sql/mongo/social-media/main.go -------------------------------------------------------------------------------- /23-no-sql/redis/broker/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-no-sql/redis/broker/main.go -------------------------------------------------------------------------------- /23-no-sql/redis/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-no-sql/redis/main.go -------------------------------------------------------------------------------- /23-profiling/00_lesson/ex1_slice_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/00_lesson/ex1_slice_test.go -------------------------------------------------------------------------------- /23-profiling/00_lesson/ex2_to_str_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/00_lesson/ex2_to_str_test.go -------------------------------------------------------------------------------- /23-profiling/00_lesson/ex3_conc_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/00_lesson/ex3_conc_test.go -------------------------------------------------------------------------------- /23-profiling/00_lesson/ex4_concat_string_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/00_lesson/ex4_concat_string_test.go -------------------------------------------------------------------------------- /23-profiling/00_lesson/ex5_match_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/00_lesson/ex5_match_test.go -------------------------------------------------------------------------------- /23-profiling/00_lesson/ex6_obj_reuse_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/00_lesson/ex6_obj_reuse_test.go -------------------------------------------------------------------------------- /23-profiling/00_lesson/go.mod: -------------------------------------------------------------------------------- 1 | module otus.ru/benchtest 2 | 3 | go 1.16 4 | -------------------------------------------------------------------------------- /23-profiling/00_lesson/optimization/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/00_lesson/optimization/go.mod -------------------------------------------------------------------------------- /23-profiling/00_lesson/optimization/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/00_lesson/optimization/go.sum -------------------------------------------------------------------------------- /23-profiling/00_lesson/optimization/top10.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/00_lesson/optimization/top10.go -------------------------------------------------------------------------------- /23-profiling/00_lesson/optimization/top10_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/00_lesson/optimization/top10_test.go -------------------------------------------------------------------------------- /23-profiling/00_lesson/pprofsrv/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/00_lesson/pprofsrv/main.go -------------------------------------------------------------------------------- /23-profiling/01_bench/ex.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/01_bench/ex.txt -------------------------------------------------------------------------------- /23-profiling/01_bench/exbench.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/01_bench/exbench.go -------------------------------------------------------------------------------- /23-profiling/01_bench/exbench_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/01_bench/exbench_test.go -------------------------------------------------------------------------------- /23-profiling/02_benchpar/benchpar.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/02_benchpar/benchpar.go -------------------------------------------------------------------------------- /23-profiling/02_benchpar/ex.txt: -------------------------------------------------------------------------------- 1 | go test -bench . -------------------------------------------------------------------------------- /23-profiling/02_benchpar/exbenchpar_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/02_benchpar/exbenchpar_test.go -------------------------------------------------------------------------------- /23-profiling/03_prealloc/prealloc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/03_prealloc/prealloc.go -------------------------------------------------------------------------------- /23-profiling/03_prealloc/prealloc_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/03_prealloc/prealloc_test.go -------------------------------------------------------------------------------- /23-profiling/04_reuse/reuse.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/04_reuse/reuse.go -------------------------------------------------------------------------------- /23-profiling/04_reuse/reuse_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/04_reuse/reuse_test.go -------------------------------------------------------------------------------- /23-profiling/05_fmtvsstrconv/fmtvsstrconv.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/05_fmtvsstrconv/fmtvsstrconv.go -------------------------------------------------------------------------------- /23-profiling/05_fmtvsstrconv/fmtvsstrconv_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/05_fmtvsstrconv/fmtvsstrconv_test.go -------------------------------------------------------------------------------- /23-profiling/06_stringsvsre/stringsvsre.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/06_stringsvsre/stringsvsre.go -------------------------------------------------------------------------------- /23-profiling/06_stringsvsre/stringsvsre_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/06_stringsvsre/stringsvsre_test.go -------------------------------------------------------------------------------- /23-profiling/07_stringbuilder/stringbuilder.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/07_stringbuilder/stringbuilder.go -------------------------------------------------------------------------------- /23-profiling/07_stringbuilder/stringbuilder_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/07_stringbuilder/stringbuilder_test.go -------------------------------------------------------------------------------- /23-profiling/08_syncpool/syncpool.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/08_syncpool/syncpool.go -------------------------------------------------------------------------------- /23-profiling/08_syncpool/syncpool_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/08_syncpool/syncpool_test.go -------------------------------------------------------------------------------- /23-profiling/09_pointerkeys/pointerkeys.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/09_pointerkeys/pointerkeys.go -------------------------------------------------------------------------------- /23-profiling/10_exjs/exjs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/10_exjs/exjs.go -------------------------------------------------------------------------------- /23-profiling/10_exjs/exjs_easyjson.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/10_exjs/exjs_easyjson.go -------------------------------------------------------------------------------- /23-profiling/10_exjs/exjs_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/10_exjs/exjs_test.go -------------------------------------------------------------------------------- /23-profiling/11_generics/generics.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/11_generics/generics.go -------------------------------------------------------------------------------- /23-profiling/11_generics/generics_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/11_generics/generics_test.go -------------------------------------------------------------------------------- /23-profiling/12_httpserver/fast.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/12_httpserver/fast.go -------------------------------------------------------------------------------- /23-profiling/12_httpserver/standard.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/12_httpserver/standard.go -------------------------------------------------------------------------------- /23-profiling/12_httpserver/test.txt: -------------------------------------------------------------------------------- 1 | ./wrk -c100 -d20s -t50 http://127.0.0.1:8080/ -------------------------------------------------------------------------------- /23-profiling/13_pprof_console/13_pprof_console.test: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/13_pprof_console/13_pprof_console.test -------------------------------------------------------------------------------- /23-profiling/13_pprof_console/cpu.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/13_pprof_console/cpu.out -------------------------------------------------------------------------------- /23-profiling/13_pprof_console/help.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/13_pprof_console/help.txt -------------------------------------------------------------------------------- /23-profiling/13_pprof_console/mem.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/13_pprof_console/mem.out -------------------------------------------------------------------------------- /23-profiling/13_pprof_console/prealloc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/13_pprof_console/prealloc.go -------------------------------------------------------------------------------- /23-profiling/13_pprof_console/prealloc_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/13_pprof_console/prealloc_test.go -------------------------------------------------------------------------------- /23-profiling/14_pprof_svg_and_web/help.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/14_pprof_svg_and_web/help.txt -------------------------------------------------------------------------------- /23-profiling/14_pprof_svg_and_web/standard.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/14_pprof_svg_and_web/standard.go -------------------------------------------------------------------------------- /23-profiling/15_flamegraph/help.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/15_flamegraph/help.txt -------------------------------------------------------------------------------- /23-profiling/15_flamegraph/standard.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/15_flamegraph/standard.go -------------------------------------------------------------------------------- /23-profiling/16_trace/help.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/16_trace/help.txt -------------------------------------------------------------------------------- /23-profiling/16_trace/standard.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/16_trace/standard.go -------------------------------------------------------------------------------- /23-profiling/16_trace/trace.out: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/23-profiling/16_trace/trace.out -------------------------------------------------------------------------------- /24-context-n-net/01-tcp-chat/chat.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/24-context-n-net/01-tcp-chat/chat.go -------------------------------------------------------------------------------- /24-context-n-net/02-chat-client/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/24-context-n-net/02-chat-client/client.go -------------------------------------------------------------------------------- /24-context-n-net/03-udp-server/udpserver.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/24-context-n-net/03-udp-server/udpserver.go -------------------------------------------------------------------------------- /24-context-n-net/04-udp-client/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/24-context-n-net/04-udp-client/client.go -------------------------------------------------------------------------------- /24-context-n-net/05-dns-resolver/resolve.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/24-context-n-net/05-dns-resolver/resolve.go -------------------------------------------------------------------------------- /24-context-n-net/06-context/context.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/24-context-n-net/06-context/context.go -------------------------------------------------------------------------------- /24-context-n-net/06b-context/context.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/24-context-n-net/06b-context/context.go -------------------------------------------------------------------------------- /24-context-n-net/07-signal-notyfy-context/signal.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/24-context-n-net/07-signal-notyfy-context/signal.go -------------------------------------------------------------------------------- /24-context-n-net/08-gracefull-stop/gracefullstop.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/24-context-n-net/08-gracefull-stop/gracefullstop.go -------------------------------------------------------------------------------- /24-context-n-net/09-context-with-value/context_with_value.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/24-context-n-net/09-context-with-value/context_with_value.go -------------------------------------------------------------------------------- /24-context-n-net/10-context-with-cancel/context_with_cancel.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/24-context-n-net/10-context-with-cancel/context_with_cancel.go -------------------------------------------------------------------------------- /24-context-n-net/11-context-with-timeout/context_with_timeout.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/24-context-n-net/11-context-with-timeout/context_with_timeout.go -------------------------------------------------------------------------------- /24-context-n-net/12-context-with-deadline/context-with-deadline.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/24-context-n-net/12-context-with-deadline/context-with-deadline.go -------------------------------------------------------------------------------- /25-sql/cmd/app/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/25-sql/cmd/app/main.go -------------------------------------------------------------------------------- /25-sql/commands.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/25-sql/commands.txt -------------------------------------------------------------------------------- /25-sql/configs/local.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/25-sql/configs/local.toml -------------------------------------------------------------------------------- /25-sql/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/25-sql/go.mod -------------------------------------------------------------------------------- /25-sql/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/25-sql/go.sum -------------------------------------------------------------------------------- /25-sql/internal/app/app.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/25-sql/internal/app/app.go -------------------------------------------------------------------------------- /25-sql/internal/config/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/25-sql/internal/config/config.go -------------------------------------------------------------------------------- /25-sql/internal/repository/psql/repository.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/25-sql/internal/repository/psql/repository.go -------------------------------------------------------------------------------- /25-sql/internal/repository/repository.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/25-sql/internal/repository/repository.go -------------------------------------------------------------------------------- /25-sql/migrations/20200528084542_init.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/25-sql/migrations/20200528084542_init.sql -------------------------------------------------------------------------------- /26-grpc-2/chat/api/chat.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/chat/api/chat.go -------------------------------------------------------------------------------- /26-grpc-2/chat/api/proto/chat.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/chat/api/proto/chat.pb.go -------------------------------------------------------------------------------- /26-grpc-2/chat/api/proto/chat.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/chat/api/proto/chat.proto -------------------------------------------------------------------------------- /26-grpc-2/chat/api/proto/chat_grpc.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/chat/api/proto/chat_grpc.pb.go -------------------------------------------------------------------------------- /26-grpc-2/chat/client/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/chat/client/main.go -------------------------------------------------------------------------------- /26-grpc-2/chat/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/chat/go.mod -------------------------------------------------------------------------------- /26-grpc-2/chat/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/chat/go.sum -------------------------------------------------------------------------------- /26-grpc-2/chat/server/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/chat/server/main.go -------------------------------------------------------------------------------- /26-grpc-2/int-sint/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/int-sint/go.mod -------------------------------------------------------------------------------- /26-grpc-2/int-sint/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/int-sint/go.sum -------------------------------------------------------------------------------- /26-grpc-2/int-sint/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/int-sint/main.go -------------------------------------------------------------------------------- /26-grpc-2/int-sint/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/int-sint/main_test.go -------------------------------------------------------------------------------- /26-grpc-2/int-sint/proto/benchmark.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/int-sint/proto/benchmark.pb.go -------------------------------------------------------------------------------- /26-grpc-2/int-sint/proto/benchmark.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/int-sint/proto/benchmark.proto -------------------------------------------------------------------------------- /26-grpc-2/taskmanager/api/proto/taskmanager.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/taskmanager/api/proto/taskmanager.pb.go -------------------------------------------------------------------------------- /26-grpc-2/taskmanager/api/proto/taskmanager.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/taskmanager/api/proto/taskmanager.proto -------------------------------------------------------------------------------- /26-grpc-2/taskmanager/api/proto/taskmanager_grpc.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/taskmanager/api/proto/taskmanager_grpc.pb.go -------------------------------------------------------------------------------- /26-grpc-2/taskmanager/api/taskmanager.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/taskmanager/api/taskmanager.go -------------------------------------------------------------------------------- /26-grpc-2/taskmanager/client/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/taskmanager/client/main.go -------------------------------------------------------------------------------- /26-grpc-2/taskmanager/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/taskmanager/go.mod -------------------------------------------------------------------------------- /26-grpc-2/taskmanager/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/taskmanager/go.sum -------------------------------------------------------------------------------- /26-grpc-2/taskmanager/internal/task/handler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/taskmanager/internal/task/handler.go -------------------------------------------------------------------------------- /26-grpc-2/taskmanager/internal/task/service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/taskmanager/internal/task/service.go -------------------------------------------------------------------------------- /26-grpc-2/taskmanager/server/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-grpc-2/taskmanager/server/main.go -------------------------------------------------------------------------------- /26-http/client-func-method/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/client-func-method/main.go -------------------------------------------------------------------------------- /26-http/client-ws/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/client-ws/main.go -------------------------------------------------------------------------------- /26-http/client/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/client/main.go -------------------------------------------------------------------------------- /26-http/client/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/client/main_test.go -------------------------------------------------------------------------------- /26-http/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/go.mod -------------------------------------------------------------------------------- /26-http/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/go.sum -------------------------------------------------------------------------------- /26-http/handler/handler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/handler/handler.go -------------------------------------------------------------------------------- /26-http/handler/handler_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/handler/handler_test.go -------------------------------------------------------------------------------- /26-http/middleware-abstract/abstract_middleware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/middleware-abstract/abstract_middleware.go -------------------------------------------------------------------------------- /26-http/middleware-abstract/abstract_middleware_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/middleware-abstract/abstract_middleware_test.go -------------------------------------------------------------------------------- /26-http/middleware-abstract/middleware_lib.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/middleware-abstract/middleware_lib.go -------------------------------------------------------------------------------- /26-http/middleware/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/middleware/client.go -------------------------------------------------------------------------------- /26-http/middleware/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/middleware/server.go -------------------------------------------------------------------------------- /26-http/server-mux/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/server-mux/main.go -------------------------------------------------------------------------------- /26-http/server/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/server/main.go -------------------------------------------------------------------------------- /26-http/server/server_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/26-http/server/server_test.go -------------------------------------------------------------------------------- /27-grpc/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/Makefile -------------------------------------------------------------------------------- /27-grpc/api/elections-with-admin/elections.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/api/elections-with-admin/elections.proto -------------------------------------------------------------------------------- /27-grpc/api/elections-with-stats/elections.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/api/elections-with-stats/elections.proto -------------------------------------------------------------------------------- /27-grpc/api/elections/elections.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/api/elections/elections.proto -------------------------------------------------------------------------------- /27-grpc/elections-with-admin/client/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections-with-admin/client/main.go -------------------------------------------------------------------------------- /27-grpc/elections-with-admin/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections-with-admin/main.go -------------------------------------------------------------------------------- /27-grpc/elections-with-admin/pb/elections.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections-with-admin/pb/elections.pb.go -------------------------------------------------------------------------------- /27-grpc/elections-with-admin/pb/elections_grpc.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections-with-admin/pb/elections_grpc.pb.go -------------------------------------------------------------------------------- /27-grpc/elections-with-admin/service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections-with-admin/service.go -------------------------------------------------------------------------------- /27-grpc/elections-with-admin/validate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections-with-admin/validate.go -------------------------------------------------------------------------------- /27-grpc/elections-with-stats/client/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections-with-stats/client/main.go -------------------------------------------------------------------------------- /27-grpc/elections-with-stats/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections-with-stats/main.go -------------------------------------------------------------------------------- /27-grpc/elections-with-stats/pb/elections.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections-with-stats/pb/elections.pb.go -------------------------------------------------------------------------------- /27-grpc/elections-with-stats/pb/elections_grpc.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections-with-stats/pb/elections_grpc.pb.go -------------------------------------------------------------------------------- /27-grpc/elections-with-stats/service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections-with-stats/service.go -------------------------------------------------------------------------------- /27-grpc/elections/client/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections/client/main.go -------------------------------------------------------------------------------- /27-grpc/elections/pb/elections.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections/pb/elections.pb.go -------------------------------------------------------------------------------- /27-grpc/elections/pb/elections_grpc.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections/pb/elections_grpc.pb.go -------------------------------------------------------------------------------- /27-grpc/elections/server/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections/server/main.go -------------------------------------------------------------------------------- /27-grpc/elections/validate/validate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/elections/validate/validate.go -------------------------------------------------------------------------------- /27-grpc/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/go.mod -------------------------------------------------------------------------------- /27-grpc/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/go.sum -------------------------------------------------------------------------------- /27-grpc/setup.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/setup.md -------------------------------------------------------------------------------- /27-grpc/tools.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-grpc/tools.go -------------------------------------------------------------------------------- /27-websockets/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-websockets/README.md -------------------------------------------------------------------------------- /27-websockets/src/1/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-websockets/src/1/go.mod -------------------------------------------------------------------------------- /27-websockets/src/1/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-websockets/src/1/go.sum -------------------------------------------------------------------------------- /27-websockets/src/1/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-websockets/src/1/main.go -------------------------------------------------------------------------------- /27-websockets/src/2/client/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-websockets/src/2/client/go.mod -------------------------------------------------------------------------------- /27-websockets/src/2/client/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-websockets/src/2/client/go.sum -------------------------------------------------------------------------------- /27-websockets/src/2/client/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-websockets/src/2/client/main.go -------------------------------------------------------------------------------- /27-websockets/src/2/server/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-websockets/src/2/server/go.mod -------------------------------------------------------------------------------- /27-websockets/src/2/server/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-websockets/src/2/server/go.sum -------------------------------------------------------------------------------- /27-websockets/src/2/server/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/27-websockets/src/2/server/main.go -------------------------------------------------------------------------------- /29-queues/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/29-queues/Makefile -------------------------------------------------------------------------------- /29-queues/consumer/consumer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/29-queues/consumer/consumer.go -------------------------------------------------------------------------------- /29-queues/consumer_reconnect/consumer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/29-queues/consumer_reconnect/consumer.go -------------------------------------------------------------------------------- /29-queues/consumer_short/consumer/consumer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/29-queues/consumer_short/consumer/consumer.go -------------------------------------------------------------------------------- /29-queues/consumer_short/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/29-queues/consumer_short/main.go -------------------------------------------------------------------------------- /29-queues/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/29-queues/go.mod -------------------------------------------------------------------------------- /29-queues/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/29-queues/go.sum -------------------------------------------------------------------------------- /29-queues/producer/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/29-queues/producer/main.go -------------------------------------------------------------------------------- /29-queues/producer/producer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/29-queues/producer/producer.go -------------------------------------------------------------------------------- /29-queues/producer/producer_sync_confirm.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/29-queues/producer/producer_sync_confirm.go -------------------------------------------------------------------------------- /31-integration-testing/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/Makefile -------------------------------------------------------------------------------- /31-integration-testing/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/README.md -------------------------------------------------------------------------------- /31-integration-testing/assets/user_reg_event.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/assets/user_reg_event.png -------------------------------------------------------------------------------- /31-integration-testing/cmd/notification-service/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/cmd/notification-service/Dockerfile -------------------------------------------------------------------------------- /31-integration-testing/cmd/notification-service/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/cmd/notification-service/config.go -------------------------------------------------------------------------------- /31-integration-testing/cmd/notification-service/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/cmd/notification-service/go.mod -------------------------------------------------------------------------------- /31-integration-testing/cmd/notification-service/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/cmd/notification-service/go.sum -------------------------------------------------------------------------------- /31-integration-testing/cmd/notification-service/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/cmd/notification-service/main.go -------------------------------------------------------------------------------- /31-integration-testing/cmd/notification-service/sender.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/cmd/notification-service/sender.go -------------------------------------------------------------------------------- /31-integration-testing/cmd/registration-service/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/cmd/registration-service/Dockerfile -------------------------------------------------------------------------------- /31-integration-testing/cmd/registration-service/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/cmd/registration-service/config.go -------------------------------------------------------------------------------- /31-integration-testing/cmd/registration-service/db.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/cmd/registration-service/db.go -------------------------------------------------------------------------------- /31-integration-testing/cmd/registration-service/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/cmd/registration-service/go.mod -------------------------------------------------------------------------------- /31-integration-testing/cmd/registration-service/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/cmd/registration-service/go.sum -------------------------------------------------------------------------------- /31-integration-testing/cmd/registration-service/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/cmd/registration-service/main.go -------------------------------------------------------------------------------- /31-integration-testing/cmd/registration-service/rmq.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/cmd/registration-service/rmq.go -------------------------------------------------------------------------------- /31-integration-testing/cmd/registration-service/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/cmd/registration-service/server.go -------------------------------------------------------------------------------- /31-integration-testing/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/config.toml -------------------------------------------------------------------------------- /31-integration-testing/configs/rabbit.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/configs/rabbit.config -------------------------------------------------------------------------------- /31-integration-testing/configs/rabbit.def.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/configs/rabbit.def.json -------------------------------------------------------------------------------- /31-integration-testing/docker-compose.test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/docker-compose.test.yml -------------------------------------------------------------------------------- /31-integration-testing/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/docker-compose.yml -------------------------------------------------------------------------------- /31-integration-testing/scripts/setup.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/scripts/setup.sql -------------------------------------------------------------------------------- /31-integration-testing/tests/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/tests/Dockerfile -------------------------------------------------------------------------------- /31-integration-testing/tests/features/notification.feature: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/tests/features/notification.feature -------------------------------------------------------------------------------- /31-integration-testing/tests/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/tests/go.mod -------------------------------------------------------------------------------- /31-integration-testing/tests/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/tests/go.sum -------------------------------------------------------------------------------- /31-integration-testing/tests/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/tests/main_test.go -------------------------------------------------------------------------------- /31-integration-testing/tests/notification_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/31-integration-testing/tests/notification_test.go -------------------------------------------------------------------------------- /32-monitoring/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/32-monitoring/Dockerfile -------------------------------------------------------------------------------- /32-monitoring/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/32-monitoring/Makefile -------------------------------------------------------------------------------- /32-monitoring/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/32-monitoring/docker-compose.yml -------------------------------------------------------------------------------- /32-monitoring/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/32-monitoring/go.mod -------------------------------------------------------------------------------- /32-monitoring/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/32-monitoring/go.sum -------------------------------------------------------------------------------- /32-monitoring/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/32-monitoring/main.go -------------------------------------------------------------------------------- /32-monitoring/metrics.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/32-monitoring/metrics.go -------------------------------------------------------------------------------- /32-monitoring/prometheus.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/32-monitoring/prometheus.yaml -------------------------------------------------------------------------------- /LITERATURE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/LITERATURE.md -------------------------------------------------------------------------------- /open-lesson/interfaces/00_intro/any_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/open-lesson/interfaces/00_intro/any_test.go -------------------------------------------------------------------------------- /open-lesson/interfaces/00_intro/composition_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/open-lesson/interfaces/00_intro/composition_test.go -------------------------------------------------------------------------------- /open-lesson/interfaces/00_intro/interfaces_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/open-lesson/interfaces/00_intro/interfaces_test.go -------------------------------------------------------------------------------- /open-lesson/interfaces/00_intro/receivers_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/open-lesson/interfaces/00_intro/receivers_test.go -------------------------------------------------------------------------------- /open-lesson/interfaces/02_variables/refs_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/open-lesson/interfaces/02_variables/refs_test.go -------------------------------------------------------------------------------- /open-lesson/interfaces/02_variables/variables_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/open-lesson/interfaces/02_variables/variables_test.go -------------------------------------------------------------------------------- /open-lesson/interfaces/03_receivers/dark_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/open-lesson/interfaces/03_receivers/dark_test.go -------------------------------------------------------------------------------- /open-lesson/interfaces/03_receivers/receivers_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/open-lesson/interfaces/03_receivers/receivers_test.go -------------------------------------------------------------------------------- /open-lesson/interfaces/04_zerovalue/zerovalue_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/open-lesson/interfaces/04_zerovalue/zerovalue_test.go -------------------------------------------------------------------------------- /open-lesson/interfaces/05_type_assertion/type_assertion_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/open-lesson/interfaces/05_type_assertion/type_assertion_test.go -------------------------------------------------------------------------------- /open-lesson/interfaces/06_type_switch/type_switch_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/open-lesson/interfaces/06_type_switch/type_switch_test.go -------------------------------------------------------------------------------- /open-lesson/interfaces/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OtusGolang/webinars_practical_part/HEAD/open-lesson/interfaces/go.mod --------------------------------------------------------------------------------