text:
Getting broomsticks with NPC'S

Hey, on my server i want to do that people can buy broomsticks at npc's, i already have a pl to let a npc run a command but is ther like a command to give a player a broomstick?

Best to use the Magic NPC traits (set the wiki)
With NPC selected
/trait magic
/mtrait broomshop
Shop and prices and customizeable.

how do i remove it from a npc? i selected the wrong npc :D

Just like any other trait, use the command again:
/trait magic

Ah, oke. and the spell?

oke, last thing. you said 'Shop and prices and customizeable.' wher can i change this?

Please read this first:
https://github.com/elBukkit/MagicPlugin/wiki/Customization
Then look at the base spell, add your customizations to spells.yml
https://github.com/elBukkit/MagicPlugin/blob/master/Magic/src/main/resources/examples/survival/spells/broomshop.yml
Or just copy that spell, give it a new name and make your own shop.

Can i change the design of a broom to? if i want to have like a golden broom or something.

It's not working? i have this in spells.yml https://hastebin.com/gaxunabede.shell

If you're able to create a new broom model or modify textures, then yes.

Have you made wands named "Nimbus 10XY" in wands.yml? The section key, not the "name"?

How do i make a new wand in wands.yml?

'If you're able to create a new broom model or modify textures, then yes.' is ther a link for downloading the texturepack? so i can change it.

https://s3-us-west-2.amazonaws.com/elmakers/Magic/Magic-RP-8.zip
Copy one of the wands from the default configs to wands.yml and modify it.

thx! (P:S i give you a 5 star review on spigot :)

What do i need to change to get ''Nimbus 3XY''?
broomstick:
path: broom
mode: cast
keep: true
locked: true
locked_allow_upgrades: true
indestructible: true
active_spell: broom
migrate_icon: gold_spade
icon: wood_hoe:11
effect_color: '880088'
spells:
- broom

First change the "broomstick" key to something new, like nimbus3xy:.
Then add name: Nimbus 3XY
You don't see the names there because all in-game text is in messages.yml, separated for easy localization.

i have
nimbus3xy:
name: Nimbus 3XY
path: broom
mode: cast
keep: true
locked: true
locked_allow_upgrades: true
indestructible: true
active_spell: broom
migrate_icon: gold_spade
icon: wood_hoe:11
effect_color: '880088'
spells:
- broom
and stil getting

nvm, i didn't changed spells.yml

maby it sounds weird, but can i do like rainbow ''effect_color" or can i only have 880088

and, can i change the speed, or the cooldown, or the last or something for the nimbus 10xy?

You can add overrides (like the uberbroom you were looking at) to the wand item, these will override parameters of the broom spell it casts.
If you want full control, it may be easier to copy the broom spell, give it a new name, and put that spell on your new broom. The spell is what controls speed, cooldown and basically everything- the broom item just casts the spell.

Hey, one question. Sow i gived a player the spells ''rocket'' and ''wither'', but when he cast this spells he nothing happens. When i give him op. it works. so are ther permissions ore something?

and ''fire'' don't work too

Okey, and i get this message spammed in the console all the time, how do i fix this? very annoing
26.07 19:34:11 [Server] WARN [WandTests] Task #19 for WandTests v1.0 generated an exception
26.07 19:34:11 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Bukkit.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:11 [Server] INFO at me.allestbs.Main$3.run(Main.java:192) ~[?:?]
26.07 19:34:11 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:11 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:11 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:11 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:11 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:11 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:11 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #19 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Bukkit.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$3.run(Main.java:192) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #17 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$1.run(Main.java:146) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #19 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Bukkit.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$3.run(Main.java:192) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #17 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$1.run(Main.java:146) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #19 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Bukkit.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$3.run(Main.java:192) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #17 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$1.run(Main.java:146) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #19 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Bukkit.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$3.run(Main.java:192) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #17 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$1.run(Main.java:146) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #19 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Bukkit.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$3.run(Main.java:192) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #17 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$1.run(Main.java:146) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #19 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Bukkit.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$3.run(Main.java:192) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #17 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$1.run(Main.java:146) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #18 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Bukkit.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$2.run(Main.java:173) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #19 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Bukkit.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$3.run(Main.java:192) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #17 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$1.run(Main.java:146) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
26.07 19:34:14 [Server] WARN [WandTests] Task #19 for WandTests v1.0 generated an exception
26.07 19:34:14 [Server] INFO java.lang.NoSuchMethodError: org.bukkit.Bukkit.getOnlinePlayers()[Lorg/bukkit/entity/Player;
26.07 19:34:14 [Server] INFO at me.allestbs.Main$3.run(Main.java:192) ~[?:?]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at org.bukkit.craftbukkit.v1_11_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:353) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:738) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [spigot-1.11.2.jar:git-Spigot-3fb9445-6e3cec8]
26.07 19:34:14 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]

Fix your WandTests plugin :)
It needs to be updated, it's still using the 1.8 Bukkit API.

how?

I don't really know- is it your plugin or did you get it from someone? Whoever made that plugin will need to update it.

When i update the magic plugin to 7.3, the plugin does not work. how do i fix it?
because i am running a older version now.

And how can i turn off spells in a region?

If you are running on Spigot 1.11, Magic 7.3 should work fine. Please send me errors (from Magic, not from your own plugins) if there are any.
https://github.com/elBukkit/MagicPlugin/wiki/Regions

so what command do i use to disable all the spells?

https://github.com/elBukkit/MagicPlugin/wiki/Regions#wildcards
/region flag <region> blocked-spells *

but he can't cast it.

What's his wand lore look like? Does he have at least 60 mana?

No, 50. How do i add?

What are you trying to do here? If you're just wanting to test out spells, use the uberwand (/mgive uberwand) so you don't have to worry about mana.
If this is an actual player they should just progress as normal, as they earn spells their mana will increase so they always have enough mana to cast the spells they've got.
If you are just giving out random spells to players you're going to have problems with the mana and other progression not lining up, unless you do a lot of customization work to support what you're after.
/mage configure mana_max 200 will give him more mana.

authors: Daviduhh NathanWolf

repo: elBukkit/MagicPlugin


text:
Support parameterized exception messages

Is your feature request related to a problem?
We are using APM for a while now and it is a great tool for finding bugs and performance problems but in a few of our applications we have an explotion of error groups in the APM UI. An example:
One of those applications basically executes job chains. If an exception is thrown the exception message is used as the error message of this job. If a required dependency is still running the exception message is something like this:

Pending data jobs detected: Object '123' has data job 'MY_JOB_TYPE' (ID='10000001') with state 'INITIATED'.

Basically, we get a new error group in the Kibana Error UI for each JOB_ID which was not yet completed at the time the successor started.
Describe the solution you'd like
While I still want the complete error message in the transactions UI I want all of those errors grouped when looking in the Error UI of APM.
Describe alternatives you've considered
One workaround would be to use #853 once implemented to change the error details manually.
A workaround would be to change the error message to a general error text and add the real error message as a custom label but as the node.js agent already supports something similar I think this should be added to the Java agent.
Additional context
There are 2 parts which are affected:

the manual capturing of exceptions
the automatic instrumentation

I don't know if this aligns to your concept but i think of something like this:
In the API provide an interface like this:
package co.elastic.apm.api;

public interface ParameterizedMessage {
    String getMessage();
    String getMessageTemplate();
}

When capturing an exception(manual or automatic) the agent checks if the Exception implements this interface. If true, store the message template (additionally to the normal message)  in param_message.
If the error grouping is working for someone they do not need to change anything. If it is not working (like for us) we implement the interface so the agent knows both the message template and the interpolated text.

Hm, the exception message should not have an effect on the error group. That's precisely because the error message can be dynamic. I have just tested this out and can confirm it's still working.
The APM Server basically calculates a hash of the stack trace, without the line numbers (as they would likely vary in different versions).
Could you maybe share the documents in question?

Hey Felix, thanks a lot for the hint: I was looking at the wrong place as the stacktraces are different....

source: gharchive/issue

authors: felixbarny wolframhaussig

repo: elastic/apm-agent-java

license_type: permissive

license_source: github-api


text:
fix: update packer_cache to increase the resilience against network i…

What does this PR do?

it adds some maven parameters to increase the resilience against network issues
Why is it important?

For 10 days or so we see more network issues against maven repos. This should resolve the issues.

:green_heart: Build Succeeded

Expand to view the summary

Build stats

Build Cause: [Pull request #1401 opened]

Start Time: 2020-09-14T10:54:01.538+0000

Duration: 48 min 12 sec

Test stats :test_tube:

Test
Results

Failed
0

Passed
1560

Skipped
12

Total
1572

It's on par with what has been just merged on main pipeline build options, thus :+1: on merging this.

source: gharchive/pull-request

authors: SylvainJuge apmmachine kuisathaverat


text:
Basic support for Apache Struts 2 (#1762)

What does this PR do?
Fixes #1762
Checklist

[x] This is an enhancement of existing features, or a new feature in existing plugins

[x] I have updated CHANGELOG.asciidoc
[x] I have added tests that prove my fix is effective or that my feature works
[ ] Added an API method or config option? Document in which version this will be introduced
[x] I have made corresponding changes to the documentation

[ ] This is a bugfix

[ ] I have updated CHANGELOG.asciidoc
[ ] I have added tests that would fail without this fix

[ ] This is a new plugin

[ ] I have updated CHANGELOG.asciidoc
[ ] My code follows the style guidelines of this project
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] I have updated supported-technologies.asciidoc
[ ] Added an API method or config option? Document in which version this will be introduced
[ ] Added an instrumentation plugin? Describe how you made sure that old, non-supported versions are not instrumented by accident.

[ ] This is something else

[ ] I have updated CHANGELOG.asciidoc

:grey_exclamation: Build Aborted

The PR is not allowed to run in the CI yet

the below badges are clickable and redirect to their specific view in the CI or DOCS

Expand to view the summary

Build stats

Build Cause: Pull request #1763 opened

Reason: The PR is not allowed to run in the CI yet

Start Time: 2021-04-15T15:42:50.542+0000

Duration: 3 min 3 sec

Commit: e3310a221dcb0c254571e96305f4de2fe9e58834

Trends :test_tube:

Steps errors
Expand to view the steps failures

Load a resource file from a shared library

Took 0 min 0 sec . View more details on here
Description: approval-list/elastic/apm-agent-java.yml

Error signal

Took 0 min 0 sec . View more details on here
Description: githubPrCheckApproved: The PR is not allowed to run in the CI yet. (Only users with write permissions can do so.)

Log output
Expand to view the last 100 lines of log output

[2021-04-15T15:45:19.909Z]  > git fetch --no-tags --progress -- https://github.com/elastic/apm-agent-java.git +refs/heads/*:refs/remotes/origin/* # timeout=100
[2021-04-15T15:45:21.588Z] Pruning obsolete local branches
[2021-04-15T15:45:21.548Z]  > git config remote.origin.url https://github.com/elastic/apm-agent-java.git # timeout=10
[2021-04-15T15:45:21.561Z]  > git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10
[2021-04-15T15:45:21.578Z]  > git config remote.origin.url https://github.com/elastic/apm-agent-java.git # timeout=10
[2021-04-15T15:45:21.594Z] Fetching upstream changes from https://github.com/elastic/apm-agent-java.git
[2021-04-15T15:45:21.594Z] using GIT_ASKPASS to set credentials GitHub user @apmmachine User + Personal Access Token
[2021-04-15T15:45:21.596Z]  > git fetch --no-tags --progress --prune -- https://github.com/elastic/apm-agent-java.git +refs/pull/1763/head:refs/remotes/origin/PR-1763 +refs/heads/master:refs/remotes/origin/master # timeout=100
[2021-04-15T15:45:22.816Z] Merging remotes/origin/master commit 0c690978ef7506465a299ab0d3ff81d1d414e450 into PR head commit e3310a221dcb0c254571e96305f4de2fe9e58834
[2021-04-15T15:45:23.170Z] Merge succeeded, producing e3310a221dcb0c254571e96305f4de2fe9e58834
[2021-04-15T15:45:23.171Z] Checking out Revision e3310a221dcb0c254571e96305f4de2fe9e58834 (PR-1763)
[2021-04-15T15:45:22.825Z]  > git config core.sparsecheckout # timeout=10
[2021-04-15T15:45:22.831Z]  > git checkout -f e3310a221dcb0c254571e96305f4de2fe9e58834 # timeout=100
[2021-04-15T15:45:23.121Z]  > git remote # timeout=10
[2021-04-15T15:45:23.128Z]  > git config --get remote.origin.url # timeout=10
[2021-04-15T15:45:23.145Z] using GIT_ASKPASS to set credentials GitHub user @apmmachine User + Personal Access Token
[2021-04-15T15:45:23.146Z]  > git merge 0c690978ef7506465a299ab0d3ff81d1d414e450 # timeout=10
[2021-04-15T15:45:23.162Z]  > git rev-parse HEAD^{commit} # timeout=10
[2021-04-15T15:45:23.172Z]  > git config core.sparsecheckout # timeout=10
[2021-04-15T15:45:23.183Z]  > git checkout -f e3310a221dcb0c254571e96305f4de2fe9e58834 # timeout=100
[2021-04-15T15:45:27.156Z] Commit message: "Basic support for Apache Struts 2 (#1762)"
[2021-04-15T15:45:27.157Z] First time build. Skipping changelog.
[2021-04-15T15:45:27.184Z]  > git --version # timeout=10
[2021-04-15T15:45:27.196Z]  > git --version # 'git version 2.17.1'
[2021-04-15T15:45:27.201Z] fatal: bad object 5b62f622bb6e4e750b63eba4064d4de53db6f5e3
[2021-04-15T15:45:28.450Z] Masking supported pattern matches of $JOB_GCS_BUCKET or $NOTIFY_TO
[2021-04-15T15:45:28.569Z] Timeout set to expire in 1 hr 0 min
[2021-04-15T15:45:28.620Z] The timestamps step is unnecessary when timestamps are enabled for all Pipeline builds.
[2021-04-15T15:45:29.206Z] [INFO] Number of builds to be searched 10
[2021-04-15T15:45:29.639Z] [INFO] 'shallow' is forced to be disabled when running on PullRequests
[2021-04-15T15:45:29.679Z] Running in /var/lib/jenkins/workspace/_java_apm-agent-java-mbp_PR-1763/src/github.com/elastic/apm-agent-java
[2021-04-15T15:45:29.745Z] [INFO] gitCheckout: Checkout SCM PR-1763 with some customisation.
[2021-04-15T15:45:29.798Z] [INFO] Override default checkout
[2021-04-15T15:45:29.892Z] Sleeping for 10 sec
[2021-04-15T15:45:39.923Z] The recommended git tool is: git
[2021-04-15T15:45:40.089Z] using credential 2a9602aa-ab9f-4e52-baf3-b71ca88469c7-UserAndToken
[2021-04-15T15:45:40.230Z] Cloning the remote Git repository
[2021-04-15T15:45:40.245Z] Cloning repository https://github.com/elastic/apm-agent-java.git
[2021-04-15T15:45:40.275Z]  > git init /var/lib/jenkins/workspace/_java_apm-agent-java-mbp_PR-1763/src/github.com/elastic/apm-agent-java # timeout=10
[2021-04-15T15:45:40.286Z] Using reference repository: /var/lib/jenkins/.git-references/apm-agent-java.git
[2021-04-15T15:45:40.287Z] Fetching upstream changes from https://github.com/elastic/apm-agent-java.git
[2021-04-15T15:45:40.287Z]  > git --version # timeout=10
[2021-04-15T15:45:40.295Z]  > git --version # 'git version 2.17.1'
[2021-04-15T15:45:40.296Z] using GIT_ASKPASS to set credentials GitHub user @apmmachine User + Personal Access Token
[2021-04-15T15:45:40.297Z]  > git fetch --tags --progress -- https://github.com/elastic/apm-agent-java.git +refs/heads/*:refs/remotes/origin/* # timeout=10
[2021-04-15T15:45:40.882Z]  > git config remote.origin.url https://github.com/elastic/apm-agent-java.git # timeout=10
[2021-04-15T15:45:40.886Z]  > git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10
[2021-04-15T15:45:40.895Z]  > git config remote.origin.url https://github.com/elastic/apm-agent-java.git # timeout=10
[2021-04-15T15:45:40.911Z] Fetching upstream changes from https://github.com/elastic/apm-agent-java.git
[2021-04-15T15:45:40.911Z] using GIT_ASKPASS to set credentials GitHub user @apmmachine User + Personal Access Token
[2021-04-15T15:45:40.912Z]  > git fetch --tags --progress -- https://github.com/elastic/apm-agent-java.git +refs/pull/1763/head:refs/remotes/origin/PR-1763 +refs/heads/master:refs/remotes/origin/master # timeout=10
[2021-04-15T15:45:41.379Z] Checking out Revision 19d7de9ab655f877065aae138f480fe5701675ca (origin/PR-1763)
[2021-04-15T15:45:41.598Z] Commit message: "Added #1763 to the changelog"
[2021-04-15T15:45:41.599Z] First time build. Skipping changelog.
[2021-04-15T15:45:41.617Z]  > git --version # timeout=10
[2021-04-15T15:45:41.623Z]  > git --version # 'git version 2.17.1'
[2021-04-15T15:45:41.628Z] fatal: bad object 5b62f622bb6e4e750b63eba4064d4de53db6f5e3
[2021-04-15T15:45:41.371Z]  > git rev-parse origin/PR-1763^{commit} # timeout=10
[2021-04-15T15:45:41.380Z]  > git config core.sparsecheckout # timeout=10
[2021-04-15T15:45:41.388Z]  > git checkout -f 19d7de9ab655f877065aae138f480fe5701675ca # timeout=10
[2021-04-15T15:45:42.652Z] Masking supported pattern matches of $GIT_USERNAME or $GIT_PASSWORD
[2021-04-15T15:45:43.499Z] + git fetch https://****:****@github.com/elastic/apm-agent-java.git +refs/pull/*/head:refs/remotes/origin/pr/*
[2021-04-15T15:45:44.569Z] Running in /var/lib/jenkins/workspace/_java_apm-agent-java-mbp_PR-1763/src/github.com/elastic/apm-agent-java/.git
[2021-04-15T15:45:44.754Z] Archiving artifacts
[2021-04-15T15:45:45.673Z] + git rev-parse HEAD
[2021-04-15T15:45:46.053Z] + git rev-parse HEAD
[2021-04-15T15:45:46.396Z] + git rev-parse origin/pr/1763
[2021-04-15T15:45:46.484Z] [INFO] githubEnv: Found Git Build Cause: pr
[2021-04-15T15:45:46.907Z] Masking supported pattern matches of $GITHUB_TOKEN
[2021-04-15T15:45:48.087Z] [WARN] githubApiCall: The REST API call https://api.github.com/repos/elastic/apm-agent-java/pulls/1763/reviews return 0 elements
[2021-04-15T15:45:48.213Z] [INFO] githubPrCheckApproved: Title: Basic support for Apache Struts 2 (#1762) - User: tobiasstadler - Author Association: CONTRIBUTOR
[2021-04-15T15:45:48.700Z] ERROR: githubPrCheckApproved: The PR is not allowed to run in the CI yet
[2021-04-15T15:45:48.700Z] ERROR: githubPrCheckApproved: The PR is not allowed to run in the CI yet. (Only users with write permissions can do so.)
[2021-04-15T15:45:48.848Z] [INFO] Let's stop build #1. The PR is not allowed to run in the CI yet
[2021-04-15T15:45:48.900Z] Sleeping for 5 sec
[2021-04-15T15:45:49.987Z] Stage "Build" skipped due to earlier failure(s)
[2021-04-15T15:45:50.279Z] Stage "Tests" skipped due to earlier failure(s)
[2021-04-15T15:45:50.576Z] Stage "Unit Tests" skipped due to earlier failure(s)
[2021-04-15T15:45:50.599Z] Stage "Smoke Tests 01" skipped due to earlier failure(s)
[2021-04-15T15:45:50.619Z] Stage "Smoke Tests 02" skipped due to earlier failure(s)
[2021-04-15T15:45:50.640Z] Stage "Benchmarks" skipped due to earlier failure(s)
[2021-04-15T15:45:50.663Z] Stage "Javadoc" skipped due to earlier failure(s)
[2021-04-15T15:45:50.929Z] Failed in branch Unit Tests
[2021-04-15T15:45:50.947Z] Failed in branch Smoke Tests 01
[2021-04-15T15:45:50.963Z] Failed in branch Smoke Tests 02
[2021-04-15T15:45:50.980Z] Failed in branch Benchmarks
[2021-04-15T15:45:50.998Z] Failed in branch Javadoc
[2021-04-15T15:45:51.384Z] Stage "Integration Tests" skipped due to earlier failure(s)
[2021-04-15T15:45:51.516Z] Stage "Stable" skipped due to earlier failure(s)
[2021-04-15T15:45:51.655Z] Stage "AfterRelease" skipped due to earlier failure(s)
[2021-04-15T15:45:51.721Z] Stage "AfterRelease" skipped due to earlier failure(s)
[2021-04-15T15:45:52.302Z] Running on Jenkins in /var/lib/jenkins/workspace/_java_apm-agent-java-mbp_PR-1763
[2021-04-15T15:45:52.503Z] [INFO] getVaultSecret: Getting secrets
[2021-04-15T15:45:52.821Z] Masking supported pattern matches of $VAULT_ADDR or $VAULT_ROLE_ID or $VAULT_SECRET_ID
[2021-04-15T15:45:54.017Z] + chmod 755 generate-build-data.sh
[2021-04-15T15:45:54.017Z] + ./generate-build-data.sh https://apm-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/apm-agent-java/apm-agent-java-mbp/PR-1763/ https://apm-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/apm-agent-java/apm-agent-java-mbp/PR-1763/runs/1 ABORTED 183194
[2021-04-15T15:45:54.268Z] INFO: curl https://apm-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/apm-agent-java/apm-agent-java-mbp/PR-1763/runs/1/steps/?limit=10000 -o steps-info.json
[2021-04-15T15:45:54.819Z] INFO: curl https://apm-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/apm-agent-java/apm-agent-java-mbp/PR-1763/runs/1/tests/?status=FAILED -o tests-errors.json
[2021-04-15T15:45:54.819Z] Retry 1/3 exited 22, retrying in 1 seconds...
[2021-04-15T15:45:55.737Z] Retry 2/3 exited 22, retrying in 2 seconds...

authors: apmmachine tobiasstadler


text:
synchronize schema spec

What
APM agent json schema automatic sync
Why
Changeset

https://github.com/elastic/apm-server/commit/72d58a75c Allow indexing of empty service.type (https://github.com/elastic/apm-server/pull/8155)

:green_heart: Build Succeeded

the below badges are clickable and redirect to their specific view in the CI or DOCS

Expand to view the summary

Build stats

Start Time: 2022-05-23T05:36:05.210+0000

Duration: 52 min 2 sec

Test stats :test_tube:

Test
Results

Failed
0

Passed
2891

Skipped
22

Total
2913

:green_heart: Flaky test report
Tests succeeded.
:robot: GitHub comments
To re-run your PR in the CI, just comment with:

/test : Re-trigger the build.

run benchmark tests : Run the benchmark tests.

run jdk compatibility tests : Run the JDK Compatibility tests.

run integration tests : Run the Agent Integration tests.

run end-to-end tests : Run the APM-ITs.

run windows tests : Build & tests on windows.

run elasticsearch-ci/docs : Re-trigger the docs validation. (use unformatted text in the comment!)


text:
Neutral naming: main

What does this pull request do?
Neutral naming

:green_heart: Build Succeeded

the below badges are clickable and redirect to their specific view in the CI or DOCS

Expand to view the summary

Build stats

Start Time: 2022-01-18T13:27:13.781+0000

Duration: 21 min 19 sec

Commit: a4074daee6865ce59d115d29433afc38d924ca72

Test stats :test_tube:

Test
Results

Failed
0

Passed
4809

Skipped
2879

Total
7688

:green_heart: Flaky test report
Tests succeeded.
:robot: GitHub comments
To re-run your PR in the CI, just comment with:

/test : Re-trigger the build.

/test linters : Run the Python linters only.

/test full : Run the full matrix of tests.

/test benchmark : Run the APM Agent Python benchmarks tests.

run elasticsearch-ci/docs : Re-trigger the docs validation. (use unformatted text in the comment!)

repo: elastic/apm-agent-python


text:
capture code stacktrace

simple fix for #22
captures code.stacktrace otel attribute and stores it in span.code.stacktrace.

Fixes #22
Fixes #177
Tested manually when combined with:

an otel agent that sends code.stacktrace attribute
https://github.com/elastic/apm-server/pull/12096 PR to include the new field

Sample JSON span document captured when testing manually
{
  "_index": ".ds-traces-apm-default-2023.11.23-000001",
  "_id": "Beec_IsBlEx8DpqSNsdT",
  "_version": 1,
  "_score": 0,
  "_source": {
    "parent": {
      "id": "999b27462a952621"
    },
    "agent": {
      "name": "opentelemetry/java",
      "version": "1.30.1"
    },
    "process": {
      "pid": 1071606,
      "executable": "/home/sylvain/.sdkman/candidates/java/17.0.8-tem/bin/java"
    },
    "code": {
      "stacktrace": "java.lang.Throwable\n\tat co.elastic.otel.ElasticSpanProcessor.captureStackTrace(ElasticSpanProcessor.java:81)\n\tat co.elastic.otel.ElasticSpanProcessor.onEnd(ElasticSpanProcessor.java:56)\n\tat io.opentelemetry.sdk.trace.MultiSpanProcessor.onEnd(MultiSpanProcessor.java:52)\n\tat io.opentelemetry.sdk.trace.SdkSpan.endInternal(SdkSpan.java:451)\n\tat io.opentelemetry.sdk.trace.SdkSpan.end(SdkSpan.java:431)\n\tat io.opentelemetry.javaagent.instrumentation.opentelemetryapi.trace.ApplicationSpan.end(ApplicationSpan.java:140)\n\tat co.elastic.apm.opbeans.controllers.APIRestController.orders(APIRestController.java:140)\n\tat java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n\tat java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)\n\tat java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n\tat java.base/java.lang.reflect.Method.invoke(Method.java:568)\n\tat org.springframework.web.method.support.InvocableHandlerM"
    },
    "processor": {
      "event": "span"
    },
    "labels": {
      "process_runtime_description": "Eclipse Adoptium OpenJDK 64-Bit Server VM 17.0.8+7",
      "elastic_span_local_root_id": "8e80b8c8b8a749f6",
      "agentdev_worktree": "span-stack",
      "elastic_span_is_local_root": "false",
      "thread_name": "http-nio-8080-exec-3",
      "agentdev_agent_type": "elastic-otel",
      "telemetry_auto_version": "elastic-0.0.1-SNAPSHOT-otel-1.30.0",
      "process_command_args": [
        "/home/sylvain/.sdkman/candidates/java/17.0.8-tem/bin/java",
        "-javaagent:/home/sylvain/dev/elastic-otel-java_span-stack/agent/build/libs/elastic-otel-javaagent-0.0.1-SNAPSHOT.jar",
        "-jar",
        "./target/opbeans-0.0.1-SNAPSHOT.jar"
      ]
    },
    "observer": {
      "hostname": "apm-server-apm-server-5bccdfb694-5qsg2",
      "type": "apm-server",
      "version": "8.12.0"
    },
    "trace": {
      "id": "a323e1ee1efb4b792b96d37f6960fcf0"
    },
    "@timestamp": "2023-11-23T14:36:11.772Z",
    "data_stream": {
      "namespace": "default",
      "type": "traces",
      "dataset": "apm"
    },
    "numeric_labels": {
      "thread_id": 50,
      "elastic_span_self_time": 4026320
    },
    "service": {
      "node": {
        "name": "sylvain-elastic"
      },
      "environment": "sylvain-test",
      "name": "opbeans-elastic-otel",
      "runtime": {
        "name": "OpenJDK Runtime Environment",
        "version": "17.0.8+7"
      },
      "language": {
        "name": "java"
      },
      "version": "1.0"
    },
    "host": {
      "hostname": "sylvain-elastic",
      "os": {
        "type": "linux",
        "platform": "linux",
        "full": "Linux 6.5.0-13-generic"
      },
      "name": "sylvain-elastic",
      "architecture": "amd64"
    },
    "event": {
      "agent_id_status": "missing",
      "ingested": "2023-11-23T14:36:17Z",
      "outcome": "unknown"
    },
    "span": {
      "duration": {
        "us": 191140
      },
      "representative_count": 1,
      "subtype": "internal",
      "name": "OpenTelemetry orders",
      "id": "8450ed499aeb1204",
      "type": "app"
    },
    "timestamp": {
      "us": 1700750171772963
    }
  },
  "fields": {
    "labels.process_command_args": [
      "/home/sylvain/.sdkman/candidates/java/17.0.8-tem/bin/java",
      "-javaagent:/home/sylvain/dev/elastic-otel-java_span-stack/agent/build/libs/elastic-otel-javaagent-0.0.1-SNAPSHOT.jar",
      "-jar",
      "./target/opbeans-0.0.1-SNAPSHOT.jar"
    ],
    "host.os.full.text": [
      "Linux 6.5.0-13-generic"
    ],
    "labels.process_runtime_description": [
      "Eclipse Adoptium OpenJDK 64-Bit Server VM 17.0.8+7"
    ],
    "host.os.full": [
      "Linux 6.5.0-13-generic"
    ],
    "labels.elastic_span_is_local_root": [
      "false"
    ],
    "host.hostname": [
      "sylvain-elastic"
    ],
    "process.pid": [
      1071606
    ],
    "service.language.name": [
      "java"
    ],
    "labels.thread_name": [
      "http-nio-8080-exec-3"
    ],
    "labels.telemetry_auto_version": [
      "elastic-0.0.1-SNAPSHOT-otel-1.30.0"
    ],
    "processor.event": [
      "span"
    ],
    "agent.name": [
      "opentelemetry/java"
    ],
    "host.name": [
      "sylvain-elastic"
    ],
    "event.agent_id_status": [
      "missing"
    ],
    "event.outcome": [
      "unknown"
    ],
    "labels.agentdev_agent_type": [
      "elastic-otel"
    ],
    "labels.agentdev_worktree": [
      "span-stack"
    ],
    "host.os.type": [
      "linux"
    ],
    "service.runtime.version": [
      "17.0.8+7"
    ],
    "span.id": [
      "8450ed499aeb1204"
    ],
    "data_stream.type": [
      "traces"
    ],
    "span.type": [
      "app"
    ],
    "host.architecture": [
      "amd64"
    ],
    "timestamp.us": [
      1700750171772963
    ],
    "code.stacktrace": [
      "java.lang.Throwable\n\tat co.elastic.otel.ElasticSpanProcessor.captureStackTrace(ElasticSpanProcessor.java:81)\n\tat co.elastic.otel.ElasticSpanProcessor.onEnd(ElasticSpanProcessor.java:56)\n\tat io.opentelemetry.sdk.trace.MultiSpanProcessor.onEnd(MultiSpanProcessor.java:52)\n\tat io.opentelemetry.sdk.trace.SdkSpan.endInternal(SdkSpan.java:451)\n\tat io.opentelemetry.sdk.trace.SdkSpan.end(SdkSpan.java:431)\n\tat io.opentelemetry.javaagent.instrumentation.opentelemetryapi.trace.ApplicationSpan.end(ApplicationSpan.java:140)\n\tat co.elastic.apm.opbeans.controllers.APIRestController.orders(APIRestController.java:140)\n\tat java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n\tat java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)\n\tat java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n\tat java.base/java.lang.reflect.Method.invoke(Method.java:568)\n\tat org.springframework.web.method.support.InvocableHandlerM"
    ],
    "observer.type": [
      "apm-server"
    ],
    "observer.version": [
      "8.12.0"
    ],
    "agent.version": [
      "1.30.1"
    ],
    "parent.id": [
      "999b27462a952621"
    ],
    "numeric_labels.thread_id": [
      50
    ],
    "span.representative_count": [
      1
    ],
    "span.name": [
      "OpenTelemetry orders"
    ],
    "labels.elastic_span_local_root_id": [
      "8e80b8c8b8a749f6"
    ],
    "numeric_labels.elastic_span_self_time": [
      4026320
    ],
    "service.node.name": [
      "sylvain-elastic"
    ],
    "trace.id": [
      "a323e1ee1efb4b792b96d37f6960fcf0"
    ],
    "span.duration.us": [
      191140
    ],
    "process.executable": [
      "/home/sylvain/.sdkman/candidates/java/17.0.8-tem/bin/java"
    ],
    "service.environment": [
      "sylvain-test"
    ],
    "service.name": [
      "opbeans-elastic-otel"
    ],
    "data_stream.namespace": [
      "default"
    ],
    "service.runtime.name": [
      "OpenJDK Runtime Environment"
    ],
    "span.subtype": [
      "internal"
    ],
    "observer.hostname": [
      "apm-server-apm-server-5bccdfb694-5qsg2"
    ],
    "event.ingested": [
      "2023-11-23T14:36:17.000Z"
    ],
    "@timestamp": [
      "2023-11-23T14:36:11.772Z"
    ],
    "service.version": [
      "1.0"
    ],
    "host.os.platform": [
      "linux"
    ],
    "data_stream.dataset": [
      "apm"
    ]
  }
}

Hi @axw, I think it's ready for review, do you think you can take a look at it ?
I have only tested it manually on my side when combined with https://github.com/elastic/apm-server/pull/12096

repo: elastic/apm-data


text:
Incorrect TS types for GET _snapshot/<repo>/<snapshot> response

🐛 Bug Report
The TS type for calling client.snapshot.get is associated with the following type:
https://github.com/elastic/elasticsearch-js/blob/7a3cfe7e23b7a81c563f4deaa2990fed4c321ee9/api/types.d.ts#L6069
When looking at the actual response from the cluster it is of the form:
{
  "responses": [
    {
      "repository": "my-repo",
      "snapshots": [ /* list of snapshots... */ ]
    }
}

The TS type is missing the responses array of objects in which snapshots is nested.
Actual request:
          const response = await client.snapshot.get({
            repository,
            snapshot: '_all',
            ignore_unavailable: true, // Allow request to succeed even if some snapshots are unavailable.
          });

Expected behavior
The TS types should match the shape of the response from the cluster.
Your Environment

@elastic/elasticsearch npm:@elastic/elasticsearch-canary@^8.0.0-canary.4

Closed in https://github.com/elastic/elastic-client-generator/pull/274.

authors: delvedor jloleysens

repo: elastic/elastic-client-generator


text:
Improving the request methods to make synchronous by default

This stems from a likely change that will arrive in Elasticsearch 2.0 from https://github.com/elasticsearch/elasticsearch/issues/9201, where asynchronous client methods will be differentiated from synchronous variants by adding Async to the end of the asynchronous overload (thus making it not an overload anymore).
With respect to the Groovy client, all requests would be impacted by this decision, but it could be hidden away to hide it in order to leave the Groovy client's API unchanged. I do not want to leave it unchanged and this change will make it in sooner or later.
I would like to discuss potentially bringing this change into the Groovy client earlier by changing the existing methods from the current format:
ListenableActionFuture<Response> response = client.request { /* ... */ }

to
ListenableActionFuture<Response> response = client.requestAsync { /* ... */ }

and adding/changing a synchronous by default option as (notice only the return type differs from the current way):
Response response = client.request { /* ... */ }

If people are okay with this change, then I would be happy to make the change in the 1.5 release of the Groovy client. If people are really happy with the old asynchronous-by-default nature of the API, or afraid of the backwards incompatible change, then I can wait to push this into 2.0. I expect that most people currently use the API synchronously by immediately calling actionGet and I would like input on usage to see if I am right or wrong.
// expected most common usage currently:
Response response = client.request { /* ... */ }.actionGet()

This will wait until elasticsearch-groovy-2.0.0.

My current plans are for pre-2.0:

Change nothing in 1.4.
Create non-deprecated variants that take the form of requestSomethingAsync from existing methods in the form of requestSomething starting in 1.5+.
Deprecate all existing client methods in 1.5+.

My current plans for 2.0:

Replace deprecated methods with synchronous versions.
Maintain *Async variants.

This change will not make it into the Groovy client beginning with ES 1.5 to ensure that I am not jumping the gun with the API change.
To be clear, as upon reflection I feel that it is not as clear as it could have been, the current API offers only asynchronous Client methods that look like this (this matches the Java client, except that the Java client only returns ActionFuture<Response>):
ListenableActionFuture<Response> request(Request request);

However, the assumption is that most users want simple, synchronous methods. In order to add that behavior without goofy overloads, the above needs to be replaced. At the end, I expect the API to look like:
Response request(Request request);
ListenableActionFuture<Response> requestAsync(Request request);

However, in favor of not diverging from the Java API (it could go in a different direction), I am going to hold off on pushing this into a release branch.

As we rapidly approach the first beta of Elasticsearch 2.0.0, I have changed the release to have a complementary, synchronous method that does not change the current approach at all.
Response requestSync(Request request);                          // synchronous
ListenableActionFuture<Response> request(Request request);      // asynchronous
ListenableActionFuture<Response> requestAsync(Request request); // asynchronous

The long term goal is still to replace the default option with a synchronous one and my hope is that the explicit methods will enable a simple transition off, then back onto the changed default.
Closed by 1e1eef61f58d832a6a01a5b2d9442580ee27d7b9

repo: elastic/elasticsearch-groovy

license_source: bigquery


text:
JavaEsSpark.esRDD can not get data from ES

Issue description
Hi,
I have tried to use JavaEsSpark.esRDD read data from ES for multiple times.
At this morning, the JavaEsSpark.esRDD can still read the data successfully.
However, at 3:00 P.M ，I notice that the interface can not read es data to rdd anymore. When I print out rdd.count, it always shows "0", which means the size of the rdd is 0.
What's more, there are no error logs, so I  could not even to debug.
Is there anyone meet the same problems?
Thanks

unfortunately without any error logs or reproduction steps, this issue isn't really actionable. If you have any updates on this issue, I'd recommend posting them on our forums and hopefully something will surface that can help you get back on track.

Hi,
Here I attach the logo printed. Not sure if they are helpful.
2018-06-04 10:10:08 INFO  org.elasticsearch.hadoop.util.Version.logVersion(Version.java:108) Elasticsearch Hadoop v7.0.0-alpha1-SNAPSHOT [df2e678939]
2018-06-04 10:10:09 INFO  org.elasticsearch.hadoop.rest.RestService.findPartitions(RestService.java:247) Reading from [test/people]
2018-06-04 10:10:09 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Starting job: collect at EsRddDemoTmp.java:74
2018-06-04 10:10:09 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Got job 0 (collect at EsRddDemoTmp.java:74) with 1 output partitions
2018-06-04 10:10:09 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Final stage: ResultStage 0 (collect at EsRddDemoTmp.java:74)
2018-06-04 10:10:09 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Parents of final stage: List()
2018-06-04 10:10:09 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Missing parents: List()
2018-06-04 10:10:09 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Submitting ResultStage 0 (JavaEsRDD[0] at RDD at AbstractEsRDD.scala:39), which has no missing parents
2018-06-04 10:10:10 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Block broadcast_0 stored as values in memory (estimated size 1432.0 B, free 912.3 MB)
2018-06-04 10:10:10 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Block broadcast_0_piece0 stored as bytes in memory (estimated size 967.0 B, free 912.3 MB)
2018-06-04 10:10:10 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Added broadcast_0_piece0 in memory on 172.18.19.41:64574 (size: 967.0 B, free: 912.3 MB)
2018-06-04 10:10:10 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Created broadcast 0 from broadcast at DAGScheduler.scala:996
2018-06-04 10:10:10 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Submitting 1 missing tasks from ResultStage 0 (JavaEsRDD[0] at RDD at AbstractEsRDD.scala:39)
2018-06-04 10:10:10 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Adding task set 0.0 with 1 tasks
2018-06-04 10:10:10 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Starting task 0.0 in stage 0.0 (TID 0, localhost, executor driver, partition 0, ANY, 8423 bytes)
2018-06-04 10:10:10 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Running task 0.0 in stage 0.0 (TID 0)
2018-06-04 10:10:10 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Finished task 0.0 in stage 0.0 (TID 0). 1008 bytes result sent to driver
2018-06-04 10:10:10 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Finished task 0.0 in stage 0.0 (TID 0) in 314 ms on localhost (executor driver) (1/1)
2018-06-04 10:10:10 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Removed TaskSet 0.0, whose tasks have all completed, from pool
2018-06-04 10:10:10 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) ResultStage 0 (collect at EsRddDemoTmp.java:74) finished in 0.335 s
2018-06-04 10:10:10 INFO  org.apache.spark.internal.Logging$class.logInfo(Logging.scala:54) Job 0 finished: collect at EsRddDemoTmp.java:74, took 0.610615 s

authors: ckeys jbaiera

repo: elastic/elasticsearch-hadoop


text:
Add pushdown filters table for es-spark documentation

Thank you for submitting a pull request!
Please make sure you have signed our Contributor License Agreement (CLA).
We are not asking you to assign copyright to us, but to give us the right to distribute your code without restriction. We ask this of all contributors in order to assure our users of the origin and continuing existence of the code.
You only need to sign the CLA once.

[x] I have signed the Contributor License Agreement (CLA)

Nice to see the approval~


text:
Allow release target to work x-platform

Our release target should work x-platform.
Right now all our build targets work cross platform except release which needs to be called from Windows
Blockers:

[ ] pack relies on nuget.exe
[ ] https://github.com/nullean/AssemblyDiffer/issues/2

@Mpdreamz , is there any ETA on this ?

@s7h no, moving assembly differ is a bit involved.
Took the first steps here: https://github.com/nullean/AssemblyDiffer/pull/3
But we also need to update JustAssembly in a fork so that it does not call the windows registry in a static property. We are also investigating other assembly differs in the mean time.

All the upstream blockers have been resolved ./build.sh <version> now works on our7.x and master branches.

repo: elastic/elasticsearch-net


text:
Fixed Suffix for Completion on Mapping

This pull request fixes completion mapping with suffix
:fireworks:  Fixes #1408 :fireworks:
Please review

[ ] @Mpdreamz / @gmarz

:disappointed: We are still getting this CLA error, lets try to fix this early this week :smile:

closing this in favor of the continued discussion on #1408

authors: Mpdreamz gmoskovicz


text:
Merge query_rule and query_ruleset namespaces into query_rules

Moves the query_rule and query_ruleset namespaces into a single top level query_rules namespace.
Followup to https://github.com/elastic/elasticsearch-specification/pull/2639

What are your thoughts around using those names instead?
client.query_rules.get_ruleset(...)
client.query_rules.get_rule(...)

😅 Yeah, those are cleaner, I'll update both PRs today.

repo: elastic/elasticsearch-specification


text:
Persist snapshot source in the read response

Description

Since the snapshot_name is computed we must persist it in the response from read. This PR ensures that any configured value is maintained through the read cycle.
Related Issues

Fixes https://github.com/elastic/terraform-provider-ec/issues/787
How Has This Been Tested?

Manually
Types of Changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Refactoring (improves code quality but has no user-facing effect)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation

Readiness Checklist

[x] My code follows the code style of this project
[ ] My change requires a change to the documentation
[ ] I have updated the documentation accordingly
[ ] I have added tests to cover my changes
[x] All new and existing tests passed

Will look at adding some unit tests here too

Acceptance tests failed due to the flaky test with Integration server endpoints.

authors: dimuon tobio

repo: elastic/terraform-provider-ec


text:
Lj/test internal pr

What this PR does / why we need it:
Which issue this PR fixes (use the format fixes #<issue number>(, fixes #<issue_number>, ...) to automatically close the issue when PR gets merged): fixes #
Public facing documentation PR (if applicable)

Special notes for reviewer:
Checklist:

[ ] Added relevant notes to WIP-CHANGELOG.md
[ ] Proper commit message prefix on all commits
[ ] Updated the public facing documentation
Is this changeset backwards compatible for existing clusters? Applying:

[ ] is completely transparent, will not impact the workload in any way.
[ ] requires running a migration script.
[ ] will create noticeable cluster degradation.
E.g. logs or metrics are not being collected or Kubernetes API server
will not be responding while upgrading.
[ ] requires draining and/or replacing nodes.
[ ] will change any APIs.
E.g. removes or changes any CK8S config options or Kubernetes APIs.
[ ] will break the cluster.
I.e. full cluster migration is required.

Pipeline config PR (if applicable)

If you change some config options (e.g. rename variable or change the default value) we may need to update the pipeline.

This was just for testing. Closing...

repo: elastisys/compliantkubernetes-apps


text:
🛑 Rentas municipal is down

In c5b0445, Rentas municipal (https://rentas.catamarcaciudad.gob.ar/ui/index.php) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Rentas municipal is back up in 4cd0856 after 23 hours, 58 minutes.

license: MIT


text:
APK

hi I was wondering i you still got the APK, or could share how/if you defeated the packager.
i'm trying to get some more details about its inner-workings and comms with the dongle, so i can (hopefully) use physical buttons to control the ui, basically like you use my own frontend to communicate with the dongle.
seems the APK i have is packaged with QiHOO, and my attemts to unpack it have failed so far.
cheers,

@VincentGijsen might I reproduce your actions on linux host to try to unpack APK?

hi @iDoka , I basically i used JDAX, but as the file is protected by an unpacker, you will get a very minimal sdk, and most stuff is encoded in a binary... lots of hassle,
I ended up searching for a pirated version of the dongle on the aliexpress sites... as all those vendors use their own link to a copy of the firmware on (as it seems) home-adsl connection, or something. Luckily for us those sellers of the pirated box didn't bother to add any form of protection, other than normal obfuscation by packing a APK.
As my intention is to use the official box, but with my own interface, to combine with another project.
I found on the usual chinese shopping sites an apk by the name of 'PhoneMirrorBox'

Yes, I used JADX on macOS, but the APK that came with my dongle wasn't protected in any obvious way. I included the link that was provided with my dongle in the "download assets" shell script here: https://github.com/electric-monk/pycarplay/blob/master/downloadassets.sh#L2

authors: VincentGijsen electric-monk iDoka

repo: electric-monk/pycarplay


text:
Move stream.subscribe() to be part of the constructor

e.g. new ShapeStream({ subscribe: () => {} })
The problem with .subscribe() is then people get the sense that they can subscribe whenever and they'll get the full stream where if you delay calling .subscribe then you'll miss the early messages. So to avoid this footgun and in general, keep construction of streams fixed & declarative, let's move subscriptions to the constructor.

I think we want this to be a declarative list of subscribers, soo something like:
type ShapeStreamSubscriber = {
  onMessages: (messages: Message[]) => void | Promise<void>,
  onError: (err: unknown) => void
}

subscribers: ShapeStreamSubscriber[] | ShapeStreamSubscriber

Is there not a slight chicken and egg thing of needing to instantiate a Shape to have the subscribers to instantiate the ShapeStream which is needed to instantiate the Shape ...?

The alternative is an explicit .start() method on a shape stream. It solves two issues:

allowing multiple or lazy subscribing to a stream (passing it to a Shape)
catching exceptions during the initial connection

.start() would return a promise that resolves/fails depending on initial connection - such as auth failing. This is imposible to do with the sync constructor (the alternative is an async static .create() but that doesn't solve lazy subscription)
After calling .start() we can lock the subscriptions and throw on any further .subscribe() calls. (Although there is an argument for late subscription for power users and edge cases...)

Is there not a slight chicken and egg thing of needing to instantiate a Shape to have the subscribers to instantiate the ShapeStream which is needed to instantiate the Shape ...?

This is part of the problem in how we currently use ShapeStream - as soon as we instantiate it it starts streaming, which means that if you "feed it" to a Shape asynchronously it will have missed messages and have inconsistent state. Passing an ongoing stream to a shape to materialize it is odd, since the materialization requires the shape to have access to the stream from the start (and that is not guaranteed when being passed an instantiated stream).
The way to do it with the declarative approach would be that Shape actually accepts Omit<ShapeStreamOptions, 'subscribers'> rather than a ShapeStream instance, and it internally creates a shape stream with itself as a subscriber.
There is also another way, using a sort of ShapeStreamBuilder, see below:

The alternative is an explicit .start() method on a shape stream.

We had a discussion around this with @KyleAMathews @kevin-dp @balegas - currently we are mixing two patterns, a declarative one and a builder one.
If we opt for the fully declarative one as the core pattern, then we can very easily code up a ShapeStreamBuilder that uses a builder pattern, where you would do something like:
const builder = new ShapeStreamBuilder()
   ..setUrl(url)
   ..setShapeDefinition(shapeDef)
   ..addSubscriber(sub)

// ... stuff happens ...

builder.addSubscriber(sub)

const shapeStream = builder.build() // or .run()
// internally the build call would create a declarative `ShapeStream`

This solves the cases where people might want to lazily add subscribers without 1) having unclear semantics as to when the stream starts or whether they can add more subscribers after etc, 2) having any externally mutable state on the stream itself and having to deal with special cases and flags and what not.

catching exceptions during the initial connection

We had discussed that this might not make that much sense, since a stream is a continuous thing and you might get auth errors or invalid relation errors at any point during the runtime of the stream - so separating the "initial connection" is extra overhead that could be handled by one generic declarative global onError handler.
We can have a static .validateShape API that is a single async call that ensures you can create the stream and everything is correct if that is important as a step, or we can have a .started promise that resolves perhaps if someone wants to await it to ensure that the stream has at least done one request or something - but errors will be caught in both the global onError handler if provided as well as in the individual subscriber error handlers.

Although there is an argument for late subscription for power users and edge cases...

I am of the opinion that if someone is this much of a power user and requires this sort of undefined behaviour they should be able to fairly easily write up their custom client implementation of the protocol - but also I think it's better to optimize the client for the intended use cases with minimal API surface and clear semantics and wait until we get requests for anything else!

Initial reaction to builder concept was a -1, but it actually translates really nicely to a builder pattern for processing the streams - so I'm a +1 now:
const comments = new ShapeStreamBuilder()
   .setUrl(url)
   .setShapeDefinition(shapeDef)

const issues = new ShapeStreamBuilder()
   .setUrl(url)
   .setShapeDefinition(shapeDef)
   .query() // Start building a query (may not be needed)
   .join({
     // Client side join of the two shapes
     shape: comments,
     key: 'id', // column on issues
     on: 'issue_id'  // column on comments
     as: 'issues'
   })
   .subscribe((msg) => doStuff(msg))
   .run() // implies .run() on comments

@samwillis huh that is pretty compelling

via GIPHY

Relevant gif https://giphy.com/gifs/theoffice-the-office-murder-tv-bwxVM7FtESiS1SBEzS

@msfstef agreed, in general I prefer a declarative api.
Thinking about it further, we don't need the implied "deep run", but not that the output of the join include won't start until both streams have started.
I wander if the solution of passing a ShapeStream to a Shape is not to - rather than:
const stream = new ShapeStream({
  url: `http://localhost:3000/v1/shape`,
  table: 'items'
})
const shape = new Shape(stream)

we do:
const shape = new Shape({
  shape: {
    url: `http://localhost:3000/v1/shape`,
    table: 'items'
  }
})

This is what we did with the PGlite sync plugin: https://pglite.dev/docs/sync#using-the-sync-plugin-alpha

@KyleAMathews note that we could add multiple subscribe calls at intermediate steps in a shape query:
const comments = new ShapeStreamBuilder()
   .setUrl(url)
   .setShapeDefinition(shapeDef)
   .query()

// we don't need to save this bit, just subscribe
// count all comments
comments.count(). subscribe((msg) => ...)

const issues = new ShapeStreamBuilder()
   .setUrl(url)
   .setShapeDefinition(shapeDef)
   .query() // Start building a query (may not be needed)
   .include({
     // Client side include of the two shapes
     shape: comments,
     key: 'id', // column on issues
     on: 'issue_id'  // column on comments
     as: 'comments' // added the comments as a 'comments' array prop on all issues
   })
   .subscribe((msg) => doStuff(msg))
   .count()
   .subscribe((msg) => ...) // count all issues
   .run() // implies .run() on comments

@samwillis re:Shape instantiation - absolutely agree, see above comment:

The way to do it with the declarative approach would be that Shape actually accepts Omit<ShapeStreamOptions, 'subscribers'> rather than a ShapeStream instance, and it internally creates a shape stream with itself as a subscriber.

Ultimately a shape owns the stream, as it needs to be a subscriber to it from the start and start from offset -1 - perhaps you could even just specify new Shape(opts: ShapeStreamOptions) and the shape just adds itself as a subscriber on top of any subscribers that you have provided - but that might just be confusing.

Making our stream match a standard stream library behaviour would be really nice

I'm not sure we can w/o a lot of acrobatics — but it's definitely worth giving it a serious look cause yeah, it'd save a lot of work

if you want multiple subscribers, you can first setup a subscriber to forward messages to e.g. 3 other subscribers "down the pipe"

"tee" is a typical term here for splitting the stream — then if you have one fork in the stream that's reading faster, the tee will buffer for the slower reader.
If we all our stream stuff can be fronted with http and can cache logs to disk or other places, then the buffering & replay happens pretty much automatically.

Bumping this issue to move it along - how are we feeling about ShapeStream needing extra stream processing?
If we make the change such that ShapeStream only starts streaming when subscribe is called on it, that has the benefit of not breaking the API completely, but we'd still have to block it from allowing subsequent subscribe calls (as the first one is effectively consuming it).
We could also not block it and allow mid-stream subscribing like we already do, and push the responsibility of correct usage to the developer (and allow "advanced" uses). In that case our API stays exactly the same, and the changes are only internal such that the stream starts on the first subscribe call.
If we want to rename it to pipe, would we still allow multiple pipe calls? or consider it a consumable resource with a single subscriber and throw for subsequent calls?

Waiting for the first subscribe call seems pretty reasonable — but still allowing mid-stream subscribes is also something I think we should allow e.g. that's what we're using for matchStream.
I think pipe could be a separate function perhaps e.g.
import { pipe, map, sum } from "@electric-sql/stream"

const stream = new Shape({...})

const mappedStream = pipe(stream, map((value) => {...value, count: value.count * 2}))

// Sam's idea to add built-in `materialize` function to do what Shape does now.
mappedStream.materialize().subscribe(rows => {
  // do something with materialized mapped rows
})

const sumStream = pipe(stream, sum(value => value.count))

subStream.subscribe() // sum of count

I think materialise may be a separate import too, we are likely to have multiple implementations: in-memory, SQLite, PGlite, any other persistence.
We would then also likely have a .toStream() on a materialized shape. In the case of a shape materialised to SQLite it would then provide an api that can be wrapped in a http api to subscribe to the shape. We have to persist the same in a way that a client can then request all changes from an offset.
We also need to take a look at the underlying D2 lib, it may need some refactoring to enable the pipe style api, and currently needs a way to finalise a full graph covering all branches of interconnected queries/operators, before then being manually steps though as things are written to its inputs. All possible, but needs consideration.

@msfstef whether we end up with the pipe api, or something similar, it will be a separate lib/import, and internally subscribe. As the underlying fetch is async, if multiple subscribes are added syncruonasly at the same time (in the same micro task), they won't miss any messages. A setTimeout(start, 0) would be belts and braces as it would ensure the start happens in a new task after any micro tasks. This will benimportant when constructing a pipeline what uses the same stream so do multiple computations. (See @KyleAMathews example above with one doing a map and the other doing the count)

@samwillis re:microtasks - indeed this is the only reason that our test suite and most use cases are mostly working, my issue is that this behaviour will undoubtedly lead to weird, hard-to-discover bugs in the future, both for us and anyone using it.
It seems to me that as an immediate action, we can change the ShapeStream to start on the first subscribe, potentially adding a setTimeout to ensure it starts in a separate event, and continue to allow subscribing mid-stream. As a first step this should eliminate all issues where a stream would only have 1 subscriber, and reduce issues with multiple subscribers, all without changing the API at all - so I think this is a win-win.
I think this issue should stay open for us to decide on more major changes, but I think it's worth actioning the above and potentially save us annoying issues asap, for single sub cases at least.

👍 to implementing immediately waiting for the first subscriber to start fetching.

authors: KyleAMathews msfstef samwillis thruflo

repo: electric-sql/electric


text:
Add comment about possibly receiving empty subsData

On the Dart client we discovered a bug, where only the second time the app is open after an initial sync, electric will try to apply Inserts again to the local database.
We discovered the problem was due to interpreting if (subsData.data) {  as if (subsData.data.length !== 0) because the data property cannot be null/undefined.
The problem is that not calling this after the initial sync, makes electric not store the subscription and lsn to the metadata table, so a second open will try to refetch again and apply again, causing UNIQUE constraint errors.
What I did is to remove the if statement, which can be confusing due to the empty arrays being truthy and because executing that code is necessary even when subsData is empty.

For context, when the data is empty, these are the statements that get executed:

LGTM.
@balegas what's your take?

It makes total sense to always call _applySubscriptionData because that is where we save the metadata info.
I'm sorry for taking so long to look into this.

@davidmartos96 needs a changeset file :)

@balegas Done!

authors: balegas davidmartos96 kevin-dp


text:
ES6 import of 'electron-winstaller' doesn't work

//import winstaller from 'electron-winstaller'; <-- doesn't work
var winstaller = require('electron-winstaller'); <-- works

Otherwise createWindowsInstaller is not visible. I wan't to use ES6 convention, is there a workaround? Not sure if that's a feature request, bug or simply my lack of knowledge. Thanks

What about import * from as winstaller from 'electron-winstaller'?

Humm.... didn't think about that. Yeah works.. thanks!

authors: havenchyk tomsiwik

repo: electronjs/windows-installer

license: mit


text:
Support round of the corners

When generating the icons, we need support to make rounds of the corners.
Example
$ npx pwa-asset-generator logo.svg images --icon-only --icon-rounded 10

Any update? @elegantapp

authors: ElYaiko nghiepdev

repo: elegantapp/pwa-asset-generator


text:
能否对接Prometheus的数据

http://prometheus.io
有意愿提交PR，能给些指引，如何接入

https://github.com/eleme/banshee#network-protocol This is the input protocol.
But we're not planning to support data sources other than statsd yet.

Maybe you @wkshare  should think about convert prometheus protocol to graphite protocol  , which is simple and easy to be transformed .

编码能力较弱，我自己试试先：） @wooparadog @wayslog

authors: wayslog wkshare wooparadog

repo: eleme/banshee


text:
Confused with absulute path in windows

https://github.com/eleme/thriftpy/blob/c49a3adf2c52948b5c1a01c3109c9676763095f0/thriftpy/parser/parser.py#L547
hi,
I am using the thriftpy in our project, our environment is Windows, and when i use thriftpy.load(path, ....) function. the question is if use relative path as the path argument, it will raise an IOError, told that do not have the file. But, if I change absulute path, after urlparse, the scheme is 'c'/'d'/'e', and the judgment here will not be matched. So why is the judgment here not changed to be able to adapt to the absolute path in windows?
My suggestion is:
elif len(url_scheme) <= 1:

Have already been solved in thriftpy2, thanks.

authors: ethe kep-w

repo: eleme/thriftpy


text:
🛑 Plex is down

In 22b9c67, Plex (https://plex.lepallec.tv/web/index.html) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Plex is back up in d5175f1.

Resolved: Plex is back up in d5175f1.

repo: elepallec/upptime


text:
User interface localization

It will be possible to translate Lexonomy's user interface into other languages beside English.

Probably not a priority at the moment.
Screenful does have support for this kind of thing, but Lexonomy isn't using it (yet).

authors: TejaGo michmech

repo: elexis-eu/lexonomy


text:
🛑 MCU - GRH is down

In bfe569d, MCU - GRH (http://produccion.cdeluruguay.gob.ar/GRH/forms/login.jsp) was down:

HTTP code: 0
Response time: 0 ms

Resolved: MCU - GRH is back up in c691235.

repo: elfoche/monitoreo


text:
Use WGPU_*_DESCRIPTOR_INIT provided bu webgpu.h

The webgpu.h file now provides a macro WGPU_FOO_DESCRIPTOR_INIT for each descriptor WGPUFooDescriptor. This is the preferred way to get default values and initialize.
This repo still uses a hacky scraping-based mechanism to list default values, and should switch to this new clean approach.

NB: This requires https://github.com/webgpu-native/webgpu-headers/pull/422 to land and wgpu-native to sync with it (Dawn already has such macros)

repo: eliemichel/WebGPU-Cpp


text:
MSID: 90278 Version: 1 DOI: 2023.07.21.550014

"msas": "Neuroscience"
"msid": "90278"
"preprintDoi": "10.1101/2023.07.21.550014"
"Reviewed Preprint posted": "2023-08-18"
"Sent for peer review": "2023-07-05"
"Posted to bioRxiv": "2023-07-22" (link: "Go to bioRxiv": "https://www.biorxiv.org/content/10.1101/2023.07.21.550014v2/")
[PLACE PDF URL HERE WHEN AVAILABLE] See step 7
Step 1. Inform bioRxiv
Who can help: @QueenKraken, @nlisgo, @scottaubrey

[x] Manuscript is in data hub index (https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v1/by-publisher/elife/get-by-manuscript-id?manuscript_id=90278)

Step 2. Create preview of manuscript
Who can help: @fred-atherden, @nlisgo, @scottaubrey

[ ] Manuscript is available for preview (https://prod--epp.elifesciences.org/preview/90278/v1)

[ ] Trigger import for staging: https://prod--epp.elifesciences.org/import
[ ] Sync data folder with s3://prod-elife-epp-data/data
[ ] Trigger import for staging: https://staging--epp.elifesciences.org/import
[ ] Sync data folder with s3://staging-elife-epp-data/data
[ ] Pull request created to enhanced-preprint-data
[ ] Post link to pull request below

Pull request: [PLACE LINK TO PULL REQUEST HERE]
Detailed instructions: https://github.com/elifesciences/enhanced-preprints-data#add-a-manuscript
Step 3: Awaiting public reviews and QC
Who can help: Production team

[ ] QC passed or QC not needed

Who can help: Editorial team

[x] Public reviews available on sciety (https://sciety.org/articles/activity/10.1101/2023.07.21.550014)
[x] Manuscript and editor details at the top of this issue (Supplied by Editorial team)
[ ] Reviews returned by EPP - https://prod--epp.elifesciences.org/api/reviewed-preprints/90278/v1/reviews

Example
"msas": "Genetics and Genomics", "Neuroscience"
"msid": "84628"
"version": "1"
"preprintDoi": "10.1101/2022.10.28.514241"
"articleType": "Reviewed Preprint"
"status": "Published from the original preprint after peer review and assessment by eLife."

"Reviewed Preprint posted": "2023-01-02"
"Sent for peer review": "2022-10-28"
"Posted to bioRxiv": "2022-11-21" (link: "Go to bioRxiv": "https://www.biorxiv.org/content/10.1101/2022.10.28.514241v1")

Editors:
Reviewing Editor
Michael B Eisen
University of California, Berkeley, United States
Senior Editor
Michael B Eisen
University of California, Berkeley, United States

Step 4: Modify manuscripts.json (no PDF)

[ ] Reviewed preprint is published to EPP (https://elifesciences.org/reviewed-preprints/90278)

[ ] Pull request created to enhanced-preprint-client
[ ] Pull request switched to "Ready for review"
[ ] Post link to pull request below

[ ] Request that a doi be registered

[ ] Post link to #enhanced-preprint comment below

Pull request: [PLACE LINK TO PULL REQUEST HERE]
#enhanced-preprint comment thread: [PLACE LINK TO COMMENT HERE]

Instructions to modify manuscripts.json

Visit: https://github.com/elifesciences/enhanced-preprints-client/actions/workflows/publish-manuscript.yaml
Click: Run workflow
Complete the form and click "Run workflow"
A successful run should result in a new pull request at https://github.com/elifesciences/enhanced-preprints-client/pulls
Open the pull request and click the "Ready for review" button to trigger tests
Once the tests pass and you are happy with the changes the PR can be merged

Example pull request: https://github.com/elifesciences/enhanced-preprints-client/pull/334/files
Once the pull request is merged in it should be available a few minutes later.

Request that a doi
Post the following in #enhanced-preprint:
@Fred can you register a doi for https://elifesciences.org/reviewed-preprints/90278

Step 5: Awaiting search reindex

[ ] Reviewed preprint is avaliable on journal homepage (https://elifesciences.org)

The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.

Additional info
If needed, the jenkins pipeline to reindex search can be triggered sooner.
https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 6: Published! Request PDF generation

[ ] Post the link to the PDF url at the top of the issue

[ ] Post link to #enhanced-preprint comment below

#enhanced-preprint comment thread: [PLACE LINK TO COMMENT HERE]
Post the following to the #enhanced-preprint on slack:
@Ryan Dix-Peek please can you generate a PDF for https://elifesciences.org/reviewed-preprints/90278

Step 7: Introduce PDF to data folder and git repo

[ ] PDF is avaliable at https://github.com/elifesciences/enhanced-preprints-data/raw/master/data/90278/v1/90278-v1.pdf

Detailed instructions: https://github.com/elifesciences/enhanced-preprints-data#add-a-pdf
Step 8: Add PDF url to manuscripts.json

[ ] Reviewed preprint PDF is available for download (https://prod--epp.elifesciences.org/reviewed-preprints/90278)

[ ] Pull request created to enhanced-preprint-client
[ ] Pull request switched to "Ready for review"
[ ] Post link to pull request below

[PLACE LINK TO PULL REQUEST HERE]

Instructions to add PDF url to manuscripts.json

Visit: https://github.com/elifesciences/enhanced-preprints-client/actions/workflows/add-pdf-url-to-manuscript.yaml
Click: Run workflow
Complete the form and click "Run workflow"
A successful run should result in a new pull request at https://github.com/elifesciences/enhanced-preprints-client/pulls
Open the pull request and click the "Ready for review" button to trigger tests
Once the tests pass and you are happy with the changes the PR can be merged

Example pull request: https://github.com/elifesciences/enhanced-preprints-client/pull/397/files
Once the pull request is merged in it should be available a few minutes later.

Step 9: Done!

[ ] Kettle is on!

Authors need to update preprint / will need an updated preview once we have the new URL

Can we please create a new preview, using https://www.biorxiv.org/content/10.1101/2023.07.21.550014v2? Thanks!

@acollings, sorry I missed this comment. Will do.
In the meantime I notice that this review has a formatting error:

Is this something that can be corrected via editing?

authors: acollings fred-atherden nlisgo

repo: elifesciences/enhanced-preprints-import


text:
MSID: 91619 Version: 2 DOI: 10.1101/2023.08.03.551866

MSID: 91619
Version: 2
Preprint DOI: https://doi.org/10.1101/2023.08.03.551866
Step 1. Awaiting reviews
Editorial to post reviews via hypothesis
Useful links:

DocMap: https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v2/by-publisher/elife/get-by-manuscript-id?manuscript_id=91619
New model tracking: https://docs.google.com/spreadsheets/d/1_fHaoOy7hjyocptKtVJRijeNpUY4hBS7Ck_aVmx6ZJk/
Reviews on sciety: https://sciety.org/articles/activity/10.1101/2023.08.03.551866

For trouble shooting (e.g. no Docmaps available):

DocMap issue addressing: https://miro.com/app/board/uXjVNCwK6EI=/
Explore DataHub DocMaps API: https://lookerstudio.google.com/reporting/4c2f0368-babb-4beb-b5b3-497e7e7b0f08/page/ejphD
Unmatched submissions and preprints: https://lookerstudio.google.com/u/0/reporting/9f86204f-3bf7-477c-9b18-5c5ef141bf69/page/p_gxi57ha93c
Unmatched manuscripts spreadsheet: https://docs.google.com/spreadsheets/d/15QcK8w-ssB7109RQEDtFpJPZ0J5HTGxoHa_2TtpMBbg/edit#gid=1336081641

Step 2. Preview reviewed preprint
Production QC content ahead of publication
Instructions:

QC preview: https://prod--epp.elifesciences.org/previews/91619v2
Update ticket with any problems (add blocked label)
When QC OK, add QC OK label to ticket and add publication date and time to https://docs.google.com/spreadsheets/d/1amAlKvdLcaDp5W8Z8g77NmkwbMF5n_u89ArSqPMO8jg
Move card to next column
(At end of the day post link in #enhanced-preprint and ask for PDF to be generated)

Useful links:

Preprint DOI :  https://doi.org/10.1101/2023.08.03.551866
Confirm reviews returned by EPP: https://prod--epp.elifesciences.org/api/reviewed-preprints/91619/v2/reviews
To update the MECA path in the docmap: https://docs.google.com/spreadsheets/d/1mctCQuNFBjSn97Lihy7_vBO6z7-N-oqyLv4clyi6zHg

Step 3: Awaiting search reindex
This step adds the reviewed preprint to the homepage: https://elifesciences.org
The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.
Useful links:

Jenkins pipeline to reindex search can be triggered sooner or monitored here: https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 4: Published! PDF requested
Waiting for PDF to be generated
Useful links:

PDF tracking: https://docs.google.com/spreadsheets/d/106_XeDjmuBae7gexOTNzg60lapeqjl2aRn9DzupGyS8/

Step 5: Introduce PDF to data folder and git repo
Upload PDF to relevent folder in git repo https://github.com/elifesciences/enhanced-preprints-data/
Step 6: Done!

[ ] Kettle is on!

error: [journal-ref-article-title] This journal reference (id c8) has no article-title element.


text:
No similar images found

material0.zip
pip install difPy

import difPy

dif = difPy.build("./material0", px_size = 10)
search = difPy.search(dif, 0.1)

>>> difPy.version.__version__
'4.1.0'

>>> search.stats
{'directory': ['./material0'], 'process': {'build': {'duration': {'start': '2024-06-20T13:09:10.204605', 'end': '2024-06-20T13:09:10
.291600', 'seconds_elapsed': 0.087}, 'parameters': {'recursive': True, 'in_folder': False, 'limit_extensions': True, 'px_size': 10,
'processes': 12}}, 'search': {'duration': {'start': '2024-06-20T13:09:11.007967', 'end': '2024-06-20T13:09:11.024502', 'seconds_elap
sed': 0.0165}, 'parameters': {'similarity_mse': 0.1, 'rotate': True, 'lazy': False, 'processes': 12, 'chunksize': None}, 'files_sear
ched': 2, 'matches_found': {'duplicates': 0, 'similar': 0}}}, 'total_files': 2, 'invalid_files': {'count': 0, 'logs': {}}}

Hi @shaman-yellow,
Thanks for your comment and sorry for the delay in getting back to you.
For your use case, you might want to consider adjusting the similarity parameter and setting it to a higher value. See here.
Thanks,
Elise

authors: elisemercury shaman-yellow

repo: elisemercury/Duplicate-Image-Finder


text:
Mesh Viewer

adding Mesh Viewer Command

not possible for now

repo: eliteSchwein/mooncord


text:
Fix table names of the join tables in polymorphic assoc guide

In this guide, the name of the join tables in the migration examples are using pluralizes convention, projects_items, todo_lists_items, while in the schema definition examples are using a different names: project_items, todo_list_item.
This PR changes the table names in the migration examples to match the table names with the schema definition examples.
ref:

https://hexdocs.pm/ecto/polymorphic-associations-with-many-to-many.html#summary

:green_heart: :blue_heart: :purple_heart: :yellow_heart: :heart:

authors: josevalim zillou

repo: elixir-ecto/ecto


text:
Update :utc_datetime handling

This changes the handling of :utc_datetime to not write offsets to the db and ignore them when fetching.
I'm wondering if this one should be changed as well though.
https://github.com/elixir-sqlite/exqlite/blob/a173dc87e6094a7beb535773b989d596461a3a75/lib/exqlite/sqlite3.ex#L170
It seems neither postgrex nor myxql support %DateTime{}s not being supplied in UTC:
Postgrex:
https://github.com/elixir-ecto/postgrex/blob/60abc91d7d64155e9d5fe587178e063b1083f668/lib/postgrex/extensions/timestamptz.ex#L52-L54
MyXQL:
https://github.com/elixir-ecto/myxql/blob/fdb147dba07d7699c4af23448996ae7f4663bce6/lib/myxql/protocol/values.ex#L341-L343
The mssql/tds driver seems to have a type for datetimes with offsets.
https://github.com/livehelpnow/tds/blob/36f228275c2bfde2baa45fe70d29d1eb1d44379b/lib/tds/types.ex#L1775-L1788
Usable with custom ecto types it seems: https://github.com/livehelpnow/tds/pull/111#issuecomment-675193597
This PR will currently ignore any offsets, given there's no clear path on how to handle the offset if there is one.
Closes #46

I'm wondering if this one should be changed as well though.
https://github.com/elixir-sqlite/exqlite/blob/a173dc87e6094a7beb535773b989d596461a3a75/lib/exqlite/sqlite3.ex#L170

Yes we should probably alter that there as well.

This PR will currently ignore any offsets, given there's no clear path on how to handle the offset if there is one.

In theory SQLite3 should shift the offsets upon writing the record to UTC. Not 100% certain on that, but I swear I remember reading it in the sqlite documentation.

Maybe here:

Formats 2 through 10 may be optionally followed by a timezone indicator of the form "[+-]HH:MM" or just "Z". The date and time functions use UTC or "zulu" time internally, and so the "Z" suffix is a no-op. Any non-zero "HH:MM" suffix is subtracted from the indicated date and time in order to compute zulu time. For example, all of the following time values are equivalent:

https://www.sqlite.org/lang_datefunc.html

Yea that's where I saw it. 👍🏻

@LostKobrakai if you can, will you go update the exqlite handling of datetimes?

I can do that, I'm just not sure if I should go with an Exception for non UTC datetimes like the other adapters, or an error tuple like everything else seems to be.

I modeled both this adapter and the client library to be close to how MyXQL handles things. If either postgrex or myxql raise an exception for that, let's do that to keep parity.

authors: LostKobrakai warmwaffles


text:
SimpleBank Online

Part 2 of SimpleBank.  Adding a basic JSON API.  This is still a WIP.

I'm going to rebase and clean this up.  Any additional changes you can think of?

Looks great so far - are you leaving auth to another day?

@pjhampton yes sir!  I thought we could build on this banking example for other lessons.
In fact, I'd like to have a couple different "projects" in Homework that you incrementally build on.  I would personally find that more engaging.
Thoughts @elixirschool/developers?

authors: doomspork pjhampton

repo: elixirschool/homework