Only the first shallow call of a sequence of calls is recorded on shallow mode
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 45/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- ruby
- Domínio
- observability
Direção de pesquisa
Comece em lib/appmap/hook/method.rb, na verificação de pacote raso por volta da linha 98, e depois reproduza o exemplo Calc usando minutes.ago e year.ago. Inspecione como AppMap.tracing rastreia o último pacote e avalie uma abordagem baseada em pilha para que toda chamada rasa seja registrada, incluindo ambas as invocações de ago.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
While implementing the shallow mode for appmap-node agent I noticed this and it's been checked by @dividedmind:
I just checked and for example
require 'active_support/core_ext'
class Calc
def calc x
y = x.minutes.ago
z = 1.year.ago
y.to_i - z.to_i
end
end
indeed only records #minutes, ignoring #year and both invocations of #ago.
It seems that the problem is with this line return false if hook_package&.shallow? && AppMap.tracing.last_package_for_current_thread == hook_package
that checks the last recorded package. Because no other package is recorded between the calls mentioned, the last package stays the same. This causes subsequent calls to be skipped from recording, even if they are also "shallow" calls. A stack based approach can be used to fix this.
- Linguagem predominante
- Ruby
- Estrelas
- 101
- Forks
- 13
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Preparar o ambiente
- Inclui um Dockerfile ou arquivo Docker Compose
- Sem modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de getappmap/appmap-ruby
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 30/100
getappmap/appmap-ruby#363 · 2 comentários ·
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 42/100
getappmap/appmap-ruby#360 ·
-
enhancement
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 45/100
getappmap/appmap-ruby#357 ·
-
bug
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
getappmap/appmap-ruby#344 · 2 comentários · 1 reação ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
getappmap/appmap-ruby#340 ·
Todas as issues de getappmap/appmap-ruby
Issues semelhantes
-
kotlin-lsp is missingAberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
JetBrains/homebrew-utils#21 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
ublue-os/homebrew-experimental-tap#774 ·
Mantenedores costumam responder em até 1 dia
-
accessibility
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 72/100
slovensko-digital/ops-portal#212 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
-
Local evaluation buckets percentage splits with the server key, so results differ from FlagsmithAberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100