
double
08.12.2017
13:29:35
скорее всего)
на 8080 порту висит апатч( стандартная страница)
как мне на 8080 поставить го?

Aleksandr
08.12.2017
13:30:22

Google

Aleksandr
08.12.2017
13:30:34
либо проксируй 8080 апача на порт го
(апач навреное умеет так)

Александр
08.12.2017
13:32:55
погуглил
что-то народ пишет что
func main() {
func x() {
}
}
не допустимо, надо
func main() {
x := func {
}
}

Daniel
08.12.2017
13:34:13
а?!

Александр
08.12.2017
13:34:55
на уровне функции
а вы уверены что на уровне функции можно еще одну функцию объявить? не через переменную

Aleksandr
08.12.2017
13:43:19

Александр
08.12.2017
13:43:40
ну вы же сами написали выше "на уровне функции объяви еще функцию"
хотя сказал что это будет только на уровне пакета
"любая именновая функция может лежать только на уровне пакета" что-то такое получается

Alexander
08.12.2017
13:53:04

Google

Александр
08.12.2017
13:56:07
спасибо, не догадался так заюзать

Alexander
08.12.2017
13:59:27
Или даже так https://play.golang.org/p/ZRZBDpit4c
при объявлении переменной типа функции даже не надо имена передаваемых переменных указывать

Александр
08.12.2017
13:59:57
да это понятно, я затупил. Думал что с := экономия прокатит ?
люблю короткий синтаксический сахар

Alexander
08.12.2017
14:00:26
угу. Но что-то не прокатывает. Зачем-то хочет, чтобы явно объявили :(

Kirill
08.12.2017
14:05:08
потому что в теле функции оно используется, а объявления функции еще не было

Alexander
08.12.2017
14:05:27
А! И кстати, явсно почему хочет, чтобы явно объявили :) Без этого мы в функци вызываем саму себя, а оно еще не известно что такое. А вот пре предварительном объявлении - уже извесно

Александр
08.12.2017
14:05:32
ну тут столько магии, что я понадеялся он выкрутиться ?

Alexander
08.12.2017
14:05:37

Александр
08.12.2017
14:06:34
зато бы строчку сэкономил ?

Alexander
08.12.2017
14:07:18
Только, все эти замыкания на пустом месте очень часто кажутся пустой любовью мозга в извращенной форме... Или оно действительно надо, или надо вобще о структуре программы подумать, а не про бизнес модель рассуждать

Александр
08.12.2017
14:07:56
там идет обсчет снилса в валидаторе, он рекурсивно и в 1 месте

Alexander
08.12.2017
14:08:57
Наверняка все то же самое можно сделать с помощью for ... {} и не устраивать конпутеру божеж мой в стеке вызовов на пустом месте

Aleksandr
08.12.2017
14:11:55
создай пакет validation и создай там SnilsValdator

Александр
08.12.2017
14:12:13
https://play.golang.org/p/KT-oVt1LI9
кое что исправил ?
может и в этом пакет рядом положу

Google

Aleksandr
08.12.2017
14:13:30
пакет у тебя кушать не просит. не усложняй себе жизнь

Alexander
08.12.2017
14:13:33

Александр
08.12.2017
14:13:52
я пошарил вдруг кому еще надо ?

Alexander
08.12.2017
14:14:12
Да что бы я так жил, как написан этот код!
/me обчитался рассказов Бабеля :)

Александр
08.12.2017
14:14:55
все вопросы в НИИ которое это думало

Alexander
08.12.2017
14:15:35
Чтобы я так жил, как эти шлимазлы в своих НИИ

Aleksandr
08.12.2017
14:18:48
коллеги, кто-то настраивал go get с приватным gitea/gogs?
вопрос собственно как и можно ли?

Alexander
08.12.2017
14:20:27

Alexander
08.12.2017
14:20:50
а как делается я не помню, но в доках все есть

Aleksandr
08.12.2017
14:21:10

Aleksandr
08.12.2017
14:25:39

Alexander
08.12.2017
14:27:57
А, кстати, да. go get ведь по HTTPS в репозиторий лезет, а не по SSH. тогда, действительно, легче локальным git забирать, что надо

Aleksandr
08.12.2017
14:30:21

Alexander
08.12.2017
14:32:53
можно Makefile сделать, и в нем запилить все, что связано в dep и всем таким

Aleksandr
08.12.2017
14:34:08

Aleksandr
08.12.2017
14:36:37

Google

Aleksandr
08.12.2017
14:38:56
для истории: в .gitconfig надо прописать
[url "git@git.domain.com:"]
insteadOf = https://git.domain.com/
или для варианта с нестандартным портом
[url "ssh://git@git.domain.com:10022/"]
insteadOf = https://git.domain.com/
ssh-ключ должен лежать где надо
тогда dep/go get лезет не по https, а по ssh и юзает ваш ключик

Александр
08.12.2017
14:40:01

Aleksandr
08.12.2017
14:40:45

Александр
08.12.2017
14:42:18
эм?
не внимательно прочитал, проехали

V
08.12.2017
15:07:39
Привет! Подскажите, из-за чего возникает segmentation violation code при обработке flag https://play.golang.org/p/6qkyIF7AXG

Lev
08.12.2017
15:11:12
invalid memory address or nil pointer dereference

V
08.12.2017
15:11:59
ага

Admin
ERROR: S client not available

V
08.12.2017
15:12:08
а как понять в чём ошибка

Aleksandr
08.12.2017
15:13:57

Vladislav
08.12.2017
15:27:29

V
08.12.2017
15:28:32

Aleksandr
08.12.2017
15:29:37

V
08.12.2017
15:29:51
похоже на то)
спасибо за подсказку с инициализацией

Aleksandr
08.12.2017
15:32:50
ну собственно так или иначе все равно так же примерно будет работать. ключ нужен да правильный урл

Vladislav
08.12.2017
15:39:27
Конечно. Ну твой вариант распространяется на все, а можно как-то (по-моему под констрэинтом поля repo и vcs) используя только Gopkg.toml

Google

Vladislav
08.12.2017
15:41:06
https://github.com/golang/dep/blob/master/docs/Gopkg.toml.md

Aleksandr
08.12.2017
15:41:48

ainu
08.12.2017
19:41:50
Ребят, у меня есть слайс
[100, 400, 200, 300]
и второй слайс
[3,4,2,1].
можно отсортировать первый слайс чтобы второй отсортировался параллельно юез потери соотнесения
То есть должно стать
[100, 200, 300, 400]
и второй слайс
[3,2,1,4].
имеется в виду, первый элементы слайсов соотнесены, вторые и так далее
о, если представить что в первом слайсе ключи некоего мапа, а во втором его значения, и надо отсортировать по ключам не потеряв связь ключ значение.
Ручками я отсортировать могу, но хочется стандартной бибилиотекой провернуть

Alexsey
08.12.2017
19:49:26
может тебе еще map и fold запилить?

ainu
08.12.2017
19:51:10
зачем

Vladislav
08.12.2017
19:52:45

ainu
08.12.2017
19:54:31
Ага, уже так и сделал=)
Волшебный sort.Sort умеет больше чем кажется
Сейчас как нибудь придумать как в swap менять помимо одного слайса ещё и второй, не делая его глобальной переменной

Vladislav
08.12.2017
19:55:51
Запихни их в одну структуру.

ainu
08.12.2017
20:00:42
Хорошая идея
Если кому вдруг интересно, сделал
https://play.golang.org/p/y3u-qlx-ds
sort.Sort - огонь

Dmitrii
08.12.2017
20:01:35
func(w http.ResponseWriter, r *http.Request) {
count := 5
for i := 0; i < count; i++ {
written, err := w.Write([]byte("chunk\n"))
log.Println(written)
if err != nil {
log.Fatal(err)
w.WriteHeader(http.StatusInternalServerError)
}
time.Sleep(1000 * time.Millisecond)
}
}
код для обучения, если клиент рвет соединение, пока цикл продолжает писать, то нету err. Как определеить что соединение было разорванно и прекратить цикл?

Александр
08.12.2017
20:30:56
не смотрел

Pawel
08.12.2017
21:30:11