Arquivo da tag: bugs

WordPress 3.3.2 – Atualização de Segurança

Fonte: WPtotal

A versão 3.3.2 do WordPress já está disponível e veio corrigir alguns problemas de segurança que a versão anterior apresentava. O anuncio da nova versão foi feita por Andrew Nacin no blog oficial do wordpress.org.

Neste update foram atualizadas 3 bibliotecas externas que tinham alguns bugs:

  • Plupload – usada no o upload de conteúdo,
  • SWFUpload – usanda anteriormente para upload de conteúdo, mas continua a ser usada por alguns plugins,
  • SWFObject – também usada em versões mais antigas do wordpress e ainda usada por alguns plugins e temas.

Além das bibliotecas, foram corrigidos os seguintes problemas:

  • Vulnerabilidade XSS ao fazer com que os links sejam clicáveis,
  • Vulnerabilidade também cross-site scripting no redireccionamento depois de fazer um comentário usando browsers mais antigos,
  • Escalação de privilégios limitados, onde um administrador de site pode descativar plugins em toda a rede ao executar uma rede de WordPress em circunstâncias especiais.

As restantes correções podem ser encontradas no change log.
A atualização para esta nova versão é recomendada e não deve de criar problemas de incompatibilidade com temas ou plugins.

A atualização pode ser feita através do painel de administração do wordpress ou se preferir pode atualizar manualmente. Os links para o download da nova versão são os seguintes:

Nota: No momento em que escrevemos este post, a versão brasileira ainda não está disponível.

WordPress 3.4 Beta 3

No mesmo artigo foi anunciado que a versão Beta 3 do WordPress 3.4 já está disponível.

Esta versão está agora mais próxima da versão final que está prevista para o dia 9 de Maio, no entanto é uma versão de testes com alguns problemas e por isso é recomendado que seja usada apenas para testes.

jQuery Mobile 1.1.0 é anunciado

Fonte: IMasters

A equipe de desenvolvimento do jQuery Mobile anunciou a versão 1.1.0 do framework web.

Entre as melhorias, os destaques são correção para barras de ferramentas, mudança na transição de páginas animadas e no carregador Ajax, formulário de design de elemento refinado e configuração de funcionalidade, e documentação aprimorada.

Para tornar a atualização da versão 1.0 para a 1.1 suave, os desenvolvedores lançaram a ferramenta ThemeRoller Mobile que suporta ambas as versões e torna fácil a migração de temas da 1.0 para a 1.1.

Além disso, a nova versão traz suporte para jQuery 1.7.1, para o módulo AMD.

A lista de novas funcionalidades e de correções de bugs é extensa, e pode ser vista em detalhes no anúncio de lançamento.

O jQuery Mobile 1.1.0 está disponível para download aqui.

Segundo release candidate do Ruby on Rails 3.2.3 é lançado

Fonte: IMasters

A equipe de desenvolvimento do Ruby on Rails anunciou hoje a chegada do segundo release candidate da versão 3.2.3.

O Rails 3.2.3 trouxe uma nova opção que permite que o usuário controle o comportamento de formulários remotos relacionados à geração authenticity_token. Aqueles que querem fragmentar seus formulários em cache verão que o token de autenticação também serão também serão armazenados em cache, o que não é aceitável. Entretanto, se esses formulários forem usados apenas com Ajax, é possível desabilitar a geração de token, porque ela será buscada com a meta tag.

Com a versão 3.2.3, há a opção de parar de gerar authenticity_token em formulários remotos, configurando config.action_view.embed_authenticity_token_in_remote_forms = false. Essa ação vai impedir o envio desses formulários com o javascript desabilitado. Caso a opção de não gerar o token em formulários remotos seja escolhida por padrão, é possível ainda explicitar :authenticity_token => true ao gerar o formulário para contornar essa configuração.

A opção padrão é true, o que significa que aplicativos já existentes não são afetados.

O RC inclui essa mudança no authenticity_token e duas correções para bugs. Caso não haja maiores impedimentos, a versão final deve ser liberada amanhã.

Detalhes sobre as mudanças que a nova versão traz podem ser encontrados no anúncio de lançamento.

Joomla 2.5.2 é liberado e traz correção para dois problemas de segurança

Fonte: IMasters

O Joomla Project disponibilizou a versão 2.5.2 do Joomla, que é uma atualização de segurança. Sendo assim, ela traz correção para dois problemas de segurança: um de alta prioridade (SQL Injection) e outro de média de prioridade (XSS Vulnerability).

Os desenvolvedores pedem que quaisquer bugs encontrados sejam reportados através do Joomla! CMS Issue Tracker.

O processo de update é simples, e instruções completas estão disponíveis neste link.

Mais detalhes estão disponíveis no anúncio oficial, que pode ser acessado aqui.

Joomla! libera atualizações para correção de vulnerabilidades críticas

Com informações de Under-Linux

Fonte: IMasters


Os desenvolvedores do Joomla! liberaram as versões 1.7.5 e 2.5.1 do sistema de gerenciamento de conteúdo (CMS) para corrigir duas vulnerabilidades de divulgação de informações.

Elas incluem um problema de gravidade média no Joomla! 1.7.x, que poderia permitir que um usuário não autorizado ganhasse acesso ao log de erro armazenado no servidor da vítima, e, em ambas as versões, uma falha de validação inadequada, que poderia ser explorada para obter acesso a dados privados.

Além disso, a atualização para o Joomla! 2.5, liberada no mês passado, corrige 30 bugs, incluindo um no qual processamento em lote gera cracking no sistema. A versão 2.5.0 e o ramo 1.7.x incluindo a versão 1.7.4 são afetadas, mas a atualização para os ramos 2.5.1 e 1.7.5 corrige esses problemas.

Entretanto, os desenvolvedores lembram aos usuários que o ramo 1.7.x vai chegar ao fim de sua vida em 24 de fevereiro de 2012. Logo, todos são aconselhados a atualizar para a versão atual.

Joomla 2.5 traz correções de bugs e novas funcionalidades

Com informações de PHP Review

Fonte: IMasters

Nesta semana, a versão 2.5 do Joomla foi disponibilizada. Entre as principais novidades apresentadas estão a busca avançada de notificações e o suporte a vários bancos de dados.

Segundo Ryan Ozimek, presidente da Open Source Matters, empresa responsável pela manutenção do Joomla, o suporte para vários bancos de dados é um grande passo para o Joomla, já que isso garante que o Joomla irá ajudar pequenas e grandes empresas e organizações a economizarem dinheiro. “Os desenvolvedores que usam o Joomla não estarão mais amarrados apenas a um banco de dados particular ou ter que gastar dinheiro integrando outro software para que o Joomla integre a sua base de dados, melhorando imensamente a escalabilidade”, explicou.

A nova versão do Joomla foi desenvolvida durante seis meses conforme anunciado na nota de lançamento da versão 1.7. De lá para cá, apenas bugs críticos foram atendidos. Nesse ciclo, muitas falhas de segurança foram corrigidos e é extremamente recomendado a atualização do Joomla para a mais recente versão.

Além disso, foram 356 correções realizadas e 26 novas funcionalidades adicionadas, entre elas estão a inclusão de processos batch, suporte a múltiplos databases e a verificação automática da versão do banco de dados; Inclusão do sistema de Captcha nativo.

A ideia da Equipe de Desenvolvimento é que o Joomla tenha ciclos regulares de atualização, tanto de segurança quanto de funcionalidades.

WordPress 3.3.1 corrige vulnerabilidade XSS

A versão 3.3.1 do WordPress foi lançada. Ela resolve uma vulnerabilidade Cross-Site Scripting (XSS) que afeta o WordPress 3.3.

Segundo um post no blog dos pesquisadores de segurança Aditya Modha e Samir Shah, a falha afeta casos de WordPress instalado usando um endereço IP, mas há casos de WordPress instalado usando um nome de domínio que não esteja supostamente vulnerável.

Além disso, a atualização corrige uma série de bugs encontrada na versão anterior, incluindo duas questões de alta prioridade: uma relacionada ao tab índex, que poderia fazer os usuários editarem ou perderem uma resposta, e a outra é no script loader.

O WordPress 3.3.1 está disponível para download a partir do site do projeto.

Com informações de Under-Linux

Fonte: IMasters

Beta 1 do Ubuntu 11.10 Oneiric Ocelot é liberado

A Canonical e os desenvolvedores do Ubuntu liberaram o primeiro beta da versão 11.10 da distribuição Linux de codinome Oneiric Ocelot. Segundo o cronograma de desenvolvimento, ainda haverá um segundo beta, previsto para ser lançado em 22 de setembro, e a versão final deve chegar em 13 de outubro.

A versão traz o kernel do Linux 3.0.0-9.15 – que é baseado no Linux 3.0.3 -, uma interface Unity atualizada e melhorada, com componentes do GNOME 3.1.5, e um pré-release do GNOME 3.2, que oferece serviços sob o shell do desktop.

Os desenvolvedores ressaltam que a funcionalidade Places passou a se chamar Lenses, e agora disponibiliza informações de múltiplas fontes, como arquivos, coleções de músicas e redes sociais.

Os pacotes de atualização incluem Python 3.2, GCC 4.6.1, CUPS 1.5.0, Shotwell 0.11 e a versão 3.4.2 do LibreOffice (a 3.4.3 chegou no final de agosto). Pacotes adicionais incluem a ferramenta de backup Déjà Dup. Além disso, foi incluído do beta do Firefox 7, e o Thunderbird t beta é agora o cliente de e-mail padrão.

Outras mudanças incluem um novo switcher para Alt+Tab, suporte para multiarch e nova tela login que usa LightDM e Unity 2D.

Como em todos os releases de desenvolvimento, o uso do sistema em ambientes de produção e em sistemas de missão crítica não é recomendável. Aqueles que testarem a versão são encorajados a dar feedback e a reportar bugs.

Fonte: IMaster

Versão 3.4.3 do LibreOffice é lançada e corrige vários bugs

A Document Foundation lançou a versão 3.4.3 do LibreOffice, que traz várias correções de bugs na suíte de software livre.

De acordo com o wiki do projeto, o quarto release da série 3.4.x não adiciona novas funcionalidades. Ele oferece correções no processador de textos Writer, no programa de planilhas Calc e no gerenciador de apresentação Impress, e em bugs em filtros e em bibliotecas. Entretanto, os desenvolvedores alertam que ainda há alguns problemas na atualização, incluindo um classificado como crítico e que será corrigido na versão 3.4.4, esperada para o início de outubro.

Mais detalhes sobre a atualização podem ser vistos nas notas de lançamento, na página da nova versão e no post do blog da Document Foundation. O LibreOffice 3.4.3 está disponível para download para Windows, Mac OS X e Linux.

Fonte: H-online

Primeiro Release Candidate do PostgreSQL 9.1 é lançado

O desenvolvimento da versão 9.1 do banco de dados open source PostgreSQL está chegando à sua conclusão. Os desenvolvedores lançaram o primeiro Release Candidade da versão, que corrige todos os bugs reportados durante os testes beta, mas não traz novas funcionalidades.

A equipe de desenvolvimento pede a todos os usuários que reportaram falhas que verifiquem se os problemas foram, de fato, resolvidos no RC. Dessa forma, eles querem garantir que nada tenha sido negligenciado.

Mais informações podem ser obtidas nas notas de lançamento. O RC1 do PostgreSQL 9.1 está disponível para download no site do projeto.

A versão final do PostgreSQL 9.1 está prevista para ser lançada no final de setembro.

Fonte: H-Online

Usuários do PHP não devem atualizar para a versão 5.3.7

Os desenvolvedores do PHP alertaram os usuários para não atualizarem para a mais recente versão do PHP, a 5.3.7, liberada na semana passada. Ela contém um sério bug na função crypt(), usada para gerar um hash de uma string – comumente uma senha – e apresenta uma falha se uma string MD5 é passada como argumento.

Os desenvolvedores notam que os salts DES e BLOWFISH funcionam como esperado. Até que uma atualização que corrija a falha seja lançada, é recomendável a não atualização para o PHP 5.3.7.

A versão 5.3.8 deve chegar nos próximos dias.

Fonte: H-Online

O que faz um bom programador?

Muita gente já me perguntou como se tornar um bom programador. Normalmente estão mais preocupados em qual linguagem aprender, qual curso fazer, quais livros técnicos ler. Porém, assim como os autores desses dois artigos que vou traduzir, eu diria que existem qualidades mais importantes a se levar em conta.

O primeiro artigo é o What makes a good programmer?

Um pensador analítico

Programadores precisam ser solucionadores de problemas. O processo de programação requer que nós sistematicamente quebremos problemas complicados, planejemos e implementemos solução e encontremos/eliminemos pequenas inconsistências no código (bugs).

Pensamento analítico também se manifesta na habilidade de seguir e entender lógicas complicadas através de segmentos disparates de código. Isso nos permite alcançar conceitos abstratos como metodologias de Orientação a Objetos e design patterns e implementemos na prática.

Tem suas prioridades claras

Se eu lhe pedisse para ordenar os itens seguintes por prioridade, como você os ordenaria?

  • Segurança
  • Mantenabilidade
  • Usabilidade
  • Performance
  • Quantidade de LOC (lines of code – linhas de código)

Pare um momento para pensar a respeito, e então considere:

1. Se você pegou quantidade de LOC primeiro, você falhou completamente pelos meus critérios. De fato, otimização de LOC pode normalmente ir diretamente contra as outras métricas (como mantenabilidade). Uma contagem baixa de LOC nunca deve ser o objetivo, somente o resultado da aplicação cuidadosa de uma boa arquitetura.

2. Se você pegou performance primeiro, você provavelmente é o cara que fica escrevendo artigos sobre porque se deveria usar loop while em vez de for já que ele foi alguns milissegundos mais rápido em seus benchmarks. Você pode sofrer com casos de otimização prematura.

Nós devemos esquecer sobre pequenas ineficiências, digamos, cerca de 97% do tempo: otimização prematura é a raiz de todo mal. – Donald Knuth

Performance deve ser bom o suficiente para satisfazer os requerimentos da aplicação. Fora casos de armadilha bem conhecidos (como executar queries em cada interação de um loop longo), otimizações de performance devem ser deixados para o fim e mesmo assim devem ser feitas quando apropriado (medir … medir … medir … otimizar).

A única exceção a isso é se você está primariamente desenvolvendo aplicações dependentes de performance (como drivers de baixo nível de sistema).

3. Segurança está mais ou menos no meio. Dependendo da aplicação e modelo distribuído isso pode ser completamente inútil ou de missão crítica. Está na maior parte no meio, e portanto não pode ser o número 1.

4. Mantenabilidade é definitivamente um dos mais importantes atributos de uma aplicação de software. Alta mantenabilidade permite que você melhore outros atributos (como performance), quando for necessário.

Mantenabilidade é o fator mais importante para manter a produtividade em alta e os custos em baixa. Por um longo tempo eu acreditei fortemente que isso era o atributo mais importante de design de software. Entretanto …

5. O atributo mais importante é usabilidade. No final, o valor de sua aplicação é o que se entrega ao usuário final.

Devemos sempre lembrar – software não é escrito para servir seus desenvolvedores ou os sistemas em que roda. Eles são escritos para resolver problemas. Se esses problemas não são resolvidos, então o projeto é um fracasso.

Eu escrevi usabilidade aqui como um termo mais geral do que somente efetividade de Interface de Usuário/UX. Mesmo uma aplicação de linha de comando ou um serviço que roda em background tem seus fatores de usabilidade no sentido de quão bem ele responde a uma necessidade específica.

Termina as coisas:

Em princípio, você está procurando por pessoas que:

  • são espertas e,
  • que terminam as coisas.

Joel Spolsky

Talvez a coisa mais importante em um desenvolvedor. Você pode ser perfeito em todos os atributos anteriores e ainda ser um programador medíocre se você não consegue terminar as coisas. Um desenvolvedor mediano mas produtivo poderia facilmente substituir vários desenvolvedores altamente talentosos mas que se movem devagar, dependendo de suas responsabilidades.

No fim do dia você definitivamente quer desenvolvedores altamente produtivos mais do que aqueles que são grandes em teoria mas não na prática.

Faz mais do que “apenas suficiente”

Terminar as coisas é importante. Terminar as coisas “do jeito certo” é ainda mais importante.

Pagar constante seu débito técnico é crucial – se você continuar acumulando débito fazendo “gambiarras” de correções rápidas que funcionam mas não são bons de mantenabilidade, você apenas está criando a aparência de progresso. Na realidade, o custo de se livrar do grande débito técnico poderia se tornar proibitivo antes de você perceber.

Gastar um tempo para constantemente refatorar código para uma forma com mais mantenabilidade é a melhor forma de prevenir a espiral que leva um projeto a desaparecer.

Responsável

Uma pessoa poderia ser um programador capaz apenas em habilidades técnicas, entretanto se ele não assume seus próprios erros e não respeita prazos ele poderia se tornar um risco muito rapidamente.

Responsabilidade significa saber onde deixar seu ego para trás para o bem do projeto. Nós normalmente desenvolvemos grandes egos à medida que nos consideramos experts em muitas coisas. Colocar o projeto primeiro é um sinal de um bom desenvolvedor.

Boas relações humanas

Outra coisa importante, essa também se aplica a programadores. Existe um estereótipo que programadores são criaturas reclusas, anti-sociais – programadores ainda são pessoas 😉

Para ser parte de uma equipe ou lidar com clientes, um programador precisa ter habilidades sociais básicas. Rudez, arrogância, paciência curta – não tem espaço em um ambiente de trabalho profissional. Tudo que se precisa é uma maçã podre para arruinar o humor de todos.

É isso

Se você respondeu positivamente a tudo acima, você provavelmente é um bom programador.

Você deve notar que não mencionei paixão ou diversidade tecnológica como atributos qualificatórios. Resumindo, eu não acho que sejam muito relevantes para a qualidade de um programador.

Paixão é bom de se ter, entretanto já conheci muitos profissionais e desenvolvedores de alta qualidade que estavam satisfeitos de apenas ir ao trabalho profissionalmente, das 9 às 17 e então ir para casa e ter vidas significativas e completas com a família. Um programador pode ser definitivamente completamente profissional sem ser apaixonado sobre programação.

Diversidade tecnológica é outra coisa boa de se ter mas não é um pré-requisito – enquanto se estiver no controle das tecnologias com que trabalha, uma falta de diversidade não deveria afetá-lo tanto. Tomadores de decisão precisam estar bem atentos para todas as opções antes de começar um projeto, entretanto hoje em dia a escolha de tecnologias simplesmente não é tão importante.

Você pode conseguir bons resultados independente da linguagem de programação e banco de dados entre outras considerações. A maior consideração deve ser o tipo de habilidades disponíveis no seu pessoal.

Fonte: blogoscoped
Traduzido por: akitaonrails.com