plonegovbr / brasil.gov.portal

Implementação em Plone do Portal Padrão da Identidade Digital de Governo
https://plone.org.br/gov/
35 stars 31 forks source link

Atualizar plone.app.contenttypes para 1.1.1 #240

Closed hvelarde closed 7 years ago

hvelarde commented 9 years ago

IDGB usa a versão 1.0 e a mais recente para o Plone 4.3 é a 1.1.1.

idgserpro commented 9 years ago

Pacotes que precisam ser alterados:

https://github.com/plonegovbr/brasil.gov.agenda/blob/eb3d45cf63e89407ee0c1f76827f0a5787e33686/setup.py

https://github.com/plonegovbr/brasil.gov.portlets/blob/e8c673620911b3e767748d54be7f110ac4fb9c0e/setup.py

https://github.com/plonegovbr/brasil.gov.temas/blob/8cbe4f0b443450789e803420c44db13e4dcafc2b/setup.py

https://github.com/plonegovbr/brasil.gov.portal/commit/284c9849a8d86088154a91cdef03ace789918359

Ver também https://github.com/collective/collective.cover/issues/637 para ter certeza que não terá impacto. De acordo com https://github.com/collective/collective.cover/issues/637#issuecomment-268860389, o bug foi adicionado em https://github.com/plone/plone.namedfile/commit/33df023d09c3d18df14f7f93feeca2ba5bf19c88#diff-03f29bbadcdf640341c9061de5a07dccR299, mas usamos a versão 3.0.7 de namedfile e portanto não somos afetados.

winstonf88 commented 8 years ago

Qual o impedimento do agenda em usar a versão nova do contenttypes?

idgserpro commented 8 years ago

@winstonf88 ver https://github.com/plonegovbr/brasil.gov.agenda/commit/ec6e87fef0f3fd933bc2707ed45ee6cde531f0ee

@ericof porque isso?

hvelarde commented 8 years ago

tem que atualizar tanto o plone.app.contenttypes quanto o plone.app.event

idgserpro commented 8 years ago

Ver também o impacto em plone.app.collection, uma vez que usamos a branch 2.x e aqui se afirma que já foi incorporado em plone.app.contenttypes.

idgserpro commented 8 years ago

plone.app.contenttypes 1.0 incorporou a branch 2.0.x do plone.app.collection. Ver https://github.com/plone/plone.app.contenttypes/blob/1.0/CHANGES.rst e https://github.com/plone/plone.app.contenttypes/commit/fa3470175f834f15e1ba7425b3a82239d8ad8c9d onde foi feita a mescla entre os dois pacotes. Por isso que pudemos remover a pinagem de plone.app.collection 2.0b5 em https://github.com/plonegovbr/portal.buildout/commit/0d4d384e8c4ace9c8d37d444a7f16764f5c36026, pois criamos uma lógica que remove a layer do plone.app.collection para portais antigos que tinham esse pacote instalado (ver https://github.com/plonegovbr/brasil.gov.portal/commit/ab55f0fdf09201bb26e6fe9b1815e178a94d5e2c).

claytonc commented 8 years ago

@idgserpro Atualizando o plone.app.contenttypes para a versão 1.1.1 resolve parte do #155 faltando só atualizar o collective.nitf.

idgserpro commented 7 years ago

~Ver também se com essa atualização o relato https://github.com/plonegovbr/brasil.gov.portal/issues/290 pode ser fechado.~ (Será analisado em outro relato, no de atualização de Plone em https://github.com/plonegovbr/brasil.gov.portal/issues/331)

claytonc commented 7 years ago

Mais um bug relacionado a versão do plone.app.contenttypes que o provedor de conteúdos encontrou no tinymce, achei também uma issue https://github.com/plone/Products.TinyMCE/issues/123

Mesmo atualizando o tinymce o erro ocorre as vezes.

Testei em um plone puro com o plone.app.contenttypes para 1.1.1 o problema não ocorreu.

claytonc commented 7 years ago

@idgserpro

Estou efetuando testes usando o IDG 1.1.4

1º Teste - criando um site IDG com o plone.app.contenttypes = 1.0 e depois atualizar para 1.1.1 simulando uma migração:

  1. após a criação do site removi as pinagens dos produtos (agenda e temas) e no arquivo vesions.cfg; Obs.: Só não entendi porque o produto temas esta pinando o plone.app.contenttypes.

  2. quando executei o upgrade ocorreu os erros:

    • AttributeError: 'NoneType' object has no attribute 'splitlines' - por causa do campo "Participantes" esta em branco;
    • AttributeError: timezone - porque a timezone gravada esta "BRT" e não é valida.
    • Possível solução- no arquivo plone.app.contenttypes/plone/app/contenttypes/migration/dxmigration.py linha 73 fiz essa alteração abaixo:
      if hasattr(self.old, 'attendees'):
      if self.old.attendees:
      self.new.attendees = tuple(self.old.attendees.splitlines())
      else:
      self.new.attendees = ''
      self.new.timezone = 'UTC'
  3. Após as alterações acima rodei o upgrade e o tipo "Evento" funcionou corretamente;

  4. Também testei superficial adicionando os conteúdos da agenda;

  5. plone.app.contenttypes 1.1.1 tem um upgrade que altera os nomes das visões "Use new view names" se rodar ira perder as customizações do IDG:

    outdated_methods = [
        'folder_listing',
        'folder_full_view',
        'folder_summary_view',
        'folder_tabular_view',
        'folder_album_view',
        'atct_album_view',
        'standard_view',
        'collection_view',
        'all_content',
        'thumbnail_view',
    ]
    new_methods = [
        'listing_view',
        'summary_view',
        'tabular_view',
        'full_view',
        'album_view',
        'event_listing',
    ]

2º Teste - criando um site IDG já com o plone.app.contenttypes = 1.1.1:

  1. A maioria dos itens criados que testei funcionam corretamente até agora não encontrei outros problemas;
  2. Os nomes das visões estão no novo padrão conforme o 1º teste item 5.
idgserpro commented 7 years ago

@clayton, devemos trabalhar nesse relato para um próximo release. Agradeço de antemão os testes efetuados, principalmente com relação a ambientes já criados - temos de ter um carinho especial nesse contexto.

hvelarde commented 7 years ago

eu acho que precisamos atualizar esta issues para usar plone.app.contenttypes 1.1.2 e plone.app.event 1.1.8.

@claytonc eu fiquei com algumas dúvidas:

pelo que estou entendendo atualizar fica totalmente viável após resolver esse ponto.

claytonc commented 7 years ago

@hvelarde

hvelarde commented 7 years ago

@claytonc ótimo, abre por favor uma issue diferente relatando esse problema da criação automática de conteúdo para poder solucionar.

respeito ao terceiro ponto, não ficou claro para mim também não; tu falou que ao rodar o upgrade step "ira perder as customizações do IDG"; quais customizações? tu ve algum jeito de corrigir isso diretamente upstream?

claytonc commented 7 years ago

@hvelarde

Mudou os nomes das visões das pastas e coleções.

Hoje por exemplo é folder_summary_view mudou para summary_view conforme o item 5 - https://github.com/plonegovbr/brasil.gov.portal/issues/240#issuecomment-300259611

Um exemplo é [1] tem que alterar para summary_view.

[1] https://github.com/plonegovbr/brasil.gov.portal/blob/master/src/brasil/gov/portal/browser/plone/configure.zcml#L47

hvelarde commented 7 years ago

@claytonc entendi; seria possível para você criar uma nova issue definindo essas mudanças que devem ser consertadas?

idgserpro commented 7 years ago

Acho que não precisa ser uma nova issue @hvelarde, só compilar tudo que foi discutido aqui e ou adicionar um novo comment ou editar o inicial, informando que para atualizar, "x" mudanças são necessárias.

idgserpro commented 7 years ago

Resolvido em

https://github.com/plonegovbr/portalpadrao.release/releases/tag/1.2

https://github.com/plonegovbr/portal.buildout/releases/tag/1.2