Issue #153

Closed
noosferogov/noosfero#153
Created by Joenio Costa (Edited )

Remover dos plugins código que gere HTML ou URL

Continuidade da Issue #45. Ver comentário de @manzo para mais detalhes:

7 participants
  • C8b72d0556872a2aea21e8fed0a72001?s=40&d=identicon
    Melissa Wen @melissawen

    Reassigned to @manzo

    Choose File ...   File name...
    Cancel
  • C8b72d0556872a2aea21e8fed0a72001?s=40&d=identicon
    Melissa Wen @melissawen

    @manzo, conseguimos atacar essa issue nessa sprint 7?

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo

    @melissawen começo amanhã. Quando começa a sprint 7? :)

    Choose File ...   File name...
    Cancel
  • C8b72d0556872a2aea21e8fed0a72001?s=40&d=identicon
    Melissa Wen @melissawen (Edited )

    @manzo já começou (14/03). 'on the fly'

    Estou dando uma força pro @joenio fechando o planning.

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo (Edited )

    Lista de plugins para atualização ordernada do menor para o maior:

    Legenda:

    N: não possui HTML acoplado aos models

    ?: Controverso

    R: refatorado

    São 63 plugins dos quais 21 precisam de refatoração por HTML acoplado e 14 precisam de mais discussão sobre a necessidade de refatoração.

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo

    O foco será corrigir primeiro os plugins necessários para reverter o commit https://gitlab.com/noosfero/noosfero/commit/c4d44602e57efd3721bc3b2bb898bd6be1ce582b

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo
    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo
    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo (Edited )
    Choose File ...   File name...
    Cancel
  • 8646c9570ca7b4ae286a739780af0bdd?s=40&d=identicon
    Joenio Costa @joenio

    show de bola, valeu @manzo!

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo

    Últimos dois MRs de plugins de blocos:

    https://gitlab.com/noosfero/noosfero/merge_requests/826

    https://gitlab.com/noosfero/noosfero/merge_requests/827

    Quando esses quatro MRs forem aceitos teremos o último revertendo o commit com o workaround que esses plugins fizeram necessários no core.

    Choose File ...   File name...
    Cancel
  • 0857617ca13d090825c8eb4228efb6ae?s=40&d=identicon
    Marcos Pereira @marcosronaldo

    Community track já foi refatorado.

    Choose File ...   File name...
    Cancel
  • 2fb770603e9880964ce0f8ac999d516f?s=40&d=identicon
    Rodrigo Souto @diguliu

    822, 823, 826 e 827 foram incorporados.

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo (Edited )

    Com esses MRs aceitos, desfiz a solução temporária no branch https://gitlab.com/rafamanzo/noosfero/tree/undo_blocks_workarounds

    Com isso alguns plugins foram quebrados e devem ser os próximos alvos:

    • context_content
    • organization_ratings
    • recent_content
    • statistics
    • sub_organizations
    • video
    Choose File ...   File name...
    Cancel
  • 8646c9570ca7b4ae286a739780af0bdd?s=40&d=identicon
    Joenio Costa @joenio

    é importante enviar uma mensagem na lista noosfero-br avisando sobre essa mudança pois alguns mantém plugins fora da árvore oficial do Noosfero.

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo

    A refatoração do context_content vai ser uma das mais complicadas: são quatro métodos que fazem render e depende de variáveis atribuídas pelo controller.

    Além disso, adiciona-se à lista dos que quebram removendo o workaround o plugin breadcrumb. Os testes dele passam, mas certamente estão incompletos no sentido de que ainda faz uso da API antiga de blocos. Vão ser necessários mais testes para ele e a refatoração de acordo.

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo

    Novo MR para o plugin recent_content: https://gitlab.com/noosfero/noosfero/merge_requests/856

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo
    Choose File ...   File name...
    Cancel
  • C8b72d0556872a2aea21e8fed0a72001?s=40&d=identicon
    Melissa Wen @melissawen

    @joenio para revisão

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo

    Estou por hora congelando o trabalho no plugin breadcrumbs (https://gitlab.com/rafamanzo/noosfero/tree/refactor_breadcrumbs) para esclarecer algumas dúvidas (@diguliu @joenio):

    • É possível sobrescrever controllers do Noosfero em plugins?
    • Esse plugin define que o bloco possui tipos Community, Person, Enterprise. Posso assumir que são os respectivos controllers que vou sobrescrever?

    Se essas duas coisas forem possíveis, acho que consigo resolver o que está travando a refatoração desse plugin (BreadcrumbsPlugin::ContentBreadcrumbsBlock#trail) escrevendo before_filters nesses controllers sobrescritos. O que acham?

    Obrigado!

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo

    Novo MR para o plugin sub_organizations: https://gitlab.com/noosfero/noosfero/merge_requests/883

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo

    Novo MR (já aceito) para organization_ratings: https://gitlab.com/noosfero/noosfero/merge_requests/884

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo

    Refatorando o plugin video encontrei o VideoGalleryBlock. A view de content dele parece não ter funçõ alguma: https://gitlab.com/noosfero/noosfero/blob/master/plugins/video/views/video_gallery_block.html.erb

    @joenio, @evandrojr posso remover essa view junto com o método?

    Choose File ...   File name...
    Cancel
  • 75f9da986cd17e271b4e4e64023bfa4a?s=40&d=identicon
    Evandro Junior @evandrojr

    @manzo fiz esse plugin na época que eu mal conhecia Rails, se estiver funcionado a galeria de bloco de vídeo sem essa view pode arrancar.

    Você está continuando as melhorias que @daniela começou? Ela estava fazendo umas refatorações. Tem uma migration para corrigir namespace do tipo de conteúdo. Verifique se ela está presente, senão o servidor nem vai subir depois que instalar o plugin.

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo (Edited )

    Valeu @evandrojr!

    Sim estou continuando esse trabalho. Eu não encontrei essa migration no plugin. Ela está em algum outro lugar?

    Além disso, terminei de remover o método que gera HTML por lá: https://gitlab.com/noosfero/noosfero/merge_requests/891

    Choose File ...   File name...
    Cancel
  • 8646c9570ca7b4ae286a739780af0bdd?s=40&d=identicon
    Joenio Costa @joenio

    @manzo, fiz uma refatoração simples no plugin breadcrumbs, acredito que não é o que você estava pensando, mas deve cumprir bem o papel, concentrei em apenas um ponto a variável params, e movi esse ponto para um helper, veja o commit e vc vai entender a proposta:

    Choose File ...   File name...
    Cancel
  • 75f9da986cd17e271b4e4e64023bfa4a?s=40&d=identicon
    Evandro Junior @evandrojr

    @manzo sem a migration do nome do tipo do conteúdo irá dar problemas com pessoas que já usavam o plugin antigo. O antigo não usava namespace, esse usa. O nome da classe mudou por causa do namespace.

    Choose File ...   File name...
    Cancel
  • 0743c2eb05e68c92baa5f8c498995a20?s=40&d=identicon
    Daniela Feitosa @daniela

    @evandrojr e @manzo fiz um MR com a migration que altera o nome da classe e conserta a visualização do artigo do tipo "Gallery Video", que quebrou: https://gitlab.com/noosfero/noosfero/merge_requests/897

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo

    Obrigado @daniela e @evandrojr !

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo

    Obrigado @joenio pela ajuda com o breadcrumbs. Abri o MR: https://gitlab.com/noosfero/noosfero/merge_requests/898

    Choose File ...   File name...
    Cancel
  • C8b72d0556872a2aea21e8fed0a72001?s=40&d=identicon
    Melissa Wen @melissawen

    @daniela você poderia revisar este último MR?

    Choose File ...   File name...
    Cancel
  • C8b72d0556872a2aea21e8fed0a72001?s=40&d=identicon
    Melissa Wen @melissawen

    @manzo com esse MR fecha os trabalhos nos plugins?

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo

    Vou abrir mais um MR para o plugin statistics a seguir (só estou esperando os testes passarem). Com isso todos os plugins para os quais os testes falham quando removemos o código de compatibilidade estarão de acordo.

    Por outro lado, encontrei outros casos que não quebram testes, mas em produção vão quebrar:

    • sniffer (interests_block)
    • site_tour (tour_block)
    • relevant_content (relevant_content_block)
    • profile_members_headlines (profile_members_headlines_block)
    • event (event_block)
    • display_content (display_content_block)

    Dois deles darão bastante trabalho: display_content e relevant_content.

    Então termino com mais esses ou paramos por aqui?

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo
    Choose File ...   File name...
    Cancel
  • C8b72d0556872a2aea21e8fed0a72001?s=40&d=identicon
    Melissa Wen @melissawen (Edited )

    Acredito que o ideal é continuar, mas vamos fechar essa tarefa com esse escopo e passar a abrir tarefas com escopos mais específicos (por questão de gestão). @manzo vamos ver hoje no planning com @joenio

    Choose File ...   File name...
    Cancel
  • C8b72d0556872a2aea21e8fed0a72001?s=40&d=identicon
    Melissa Wen @melissawen

    Oi @manzo, @joenio disse que deve ser feito o mesmo para esses plugins que não tem boa cobertura dos testes para isso. Vi que Braulio já está revisando o do breadcrumbs, e o 905 ele já incorporou. Então quando terminar o MR 898, vamos fechar essa tarefa e abrir tarefas específicas cada uma para um plugin, continuando os trabalhos.

    Choose File ...   File name...
    Cancel
  • B35f8cf378e6ad949d5f5246f31d4c7d?s=40&d=identicon
    Rafael Manzo @manzo
    Choose File ...   File name...
    Cancel
  • C8b72d0556872a2aea21e8fed0a72001?s=40&d=identicon
    Melissa Wen @melissawen

    Status changed to closed

    Choose File ...   File name...
    Cancel