diff --git a/Makefile b/Makefile index e08fb12..7a91e40 100644 --- a/Makefile +++ b/Makefile @@ -6,8 +6,16 @@ all: clean build build: ifeq ($(OS),Windows_NT) +# powershell +ifeq ($(SHELL),sh.exe) + SET CGO_ENABLED=0 + go build ${BUILDOPTS} -o "buny-jabber-bot" collection.go types.go globals.go lib.go event_parser.go buny.go main.go +else +# jetbrains golang CGO_ENABLED=0 go build ${BUILDOPTS} -o "buny-jabber-bot" collection.go types.go globals.go lib.go event_parser.go buny.go main.go +endif +# bash/git bash else CGO_ENABLED=0 go build ${BUILDOPTS} -o "buny-jabber-bot" collection.go types.go globals.go lib.go event_parser.go buny.go main.go endif @@ -17,9 +25,15 @@ clean: upgrade: ifeq ($(OS),Windows_NT) - rmdir vendor /s /q +# jetbrains golang, powershell +ifeq ($(SHELL),sh.exe) + if exist vendor del /F /S /Q vendor >nul +# git bash case else - rm -rf vendor + RM -r vendor +endif +else + RM -r vendor endif go get -d -u -t ./... go mod tidy diff --git a/README.md b/README.md index b97530b..0a5e532 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ Простой бот, работающий по протоколу xmpp. Его задача - банить абьюзеров чата. Этот бот автоматизирует уборку человеческой грязи. Самый важный вопрос, который следует себе задать перед его -использованием - а не забаню ли я кого-то не того? +использованием - а не забаню ли я кого-то лишнего? ## Что он может? diff --git a/Story.txt b/Story.txt index 535c803..cbb9e3f 100644 --- a/Story.txt +++ b/Story.txt @@ -1,7 +1,7 @@ Конечно, очень печально, что приходится развивать свои навыки программизмов на программах с такой задачей. Но жизнь не всегда радует своими проявлениями. -История бота довольно банальна: к нам в чятик стал набергать один товарищ и нести чушь про политоту. Если его банить +История бота довольно банальна: к нам в чятик стал набегать один товарищ и нести чушь про политоту. Если его банить классическими средствами, он просто создавал новый аккаунт и снова набегал гадить. И таким образом родилась идея как-то автоматизировать его бан. diff --git a/buny.go b/buny.go index 518f2fd..8edd27c 100644 --- a/buny.go +++ b/buny.go @@ -187,6 +187,7 @@ func buny(v xmpp.Presence) error { //nolint:gocognit,gocyclo } log.Debugf("Checking nick %s vs room %s blacklist regex %s", evilJid, room, nickRegexp) + if re.MatchString(evilNick) { // Баним именно jid if id, err := squash(room, evilJid, bEntry.ReasonEnable, v.Type); err != nil { diff --git a/lib.go b/lib.go index d9f4be9..256528e 100644 --- a/lib.go +++ b/lib.go @@ -762,7 +762,7 @@ func probeMUCLiveness() { //nolint:gocognit log.Debugf("Sending MUC ping from %s to %s", talk.JID(), room) if err := talk.PingS2S(talk.JID(), room); err != nil { - err := fmt.Errorf("Unable to ping MUC %s: %v", room, err) + err := fmt.Errorf("unable to ping MUC %s: %w", room, err) gTomb.Kill(err) } }(room) @@ -838,7 +838,7 @@ func randomPhrase(list []string) string { } // interfaceToStringSlice превращает данный интерфейс в слайс строк. -// Если может, конечно :) +// Если может, конечно :) . func interfaceToStringSlice(iface interface{}) []string { var mySlice []string