#10987: Implement Link Checking as Core Feature of Plone
-------------------------------+--------------------------------------------
 Reporter:  ctxlken            |       Owner:                                   
    
     Type:  PLIP               |      Status:  new                              
    
 Priority:  major              |   Milestone:  4.1                              
    
Component:  Upgrade/Migration  |    Keywords:  kupu tinymce link checker 
linkchecker
-------------------------------+--------------------------------------------

Old description:

> '''Proposer:''' Ken Wasetis[[BR]]
> '''Seconder:''' None as yet[[BR]]
> [[BR]]
> == Motivation ==
> The link checker that is built into the Kupu editor is very useful for
> finding 'dead links' on a site (that will cause 404 errors) and such a
> link checker is a strict requirement for many organizations evaluating
> CMS tools.  If you didn't realize this feature existed, go to Site Setup
> in your Plone 3 site and then to the Visual Editor (kupu) and then to the
> Links tab and scan for broken links.  Cool, right?!
>
> Kupu is no longer the default editor as of Plone 4.x, and the new default
> editor, TinyMCE, has no such built-in capability.  Thus, by eliminating
> Kupu as the default editor, Plone can no longer claim to have a link
> checker 'out of the box'.
>
> == Assumptions ==
> Assume that Plone should have a built-in link checker (still) and that it
> is best to not have it tied to a 3rd-party editor product that could be
> replaced by a different default visual editor in future Plone releases.
>
> == Proposal & Implementation ==
> This functionality really should not be migrated to TinyMCE, IMHO, but
> rather componentized as its own product/egg that is a core feature of
> Plone, rather than of a 3rd-party editing tool, but if for some reason,
> grafting it onto TinyMCE is easier/faster, at least that approach would
> allow Plone to maintain this functionality with a standard installation
> of Plone 4.
>
> There exists a standalone Link Monitoring Service (LMS link checker)
> utility by GoCept that provides even greater capabilities than the kupu
> bundled link checker, and it may be good to review that code base and
> learn any lessons and integrate any features that can be, but this tool
> runs as a separate service that makes XML-RPC calls to interact with the
> CMS (pros and cons to that.)
>
> I think that this is the 'gold standard' of link checking, if we could
> bring the code up-to-date, but I don't think this is a great candidate
> for the 'out of the box' Plone install/experience.  I think it's akin to
> Plone integration with SOLR, which is an even more robust search option
> for Plone, but Plone still has a pretty nice search engine that it ships
> with, without integration with another service that runs on another port,
> and in SOLR's case, another programming language (Java.)
>
> If you agree that Plone should still have a built-in link-checker
> utility, please vote for this PLIP!
>
> == Deliverables ==
> The low-hanging fruit is to carve out the link checker utility of kupu as
> a standalone egg, if possible.  It should already have a lot of tests
> that can be modified and reused.
>
>  * New product/egg for plone link checker
>  * Unit tests
>  * Localization
>  * Documentation
>
> == Risks ==
> Additional bloat to Plone 4 core (but not to its typical 'installer'
> distributions since this was a module that actually ships as part of the
> optional kupu add-on product with a typicaly Plone 4 installation,
> already)
>
> == Participants ==
> Who is signed up to do the work?
> (Real names and usernames, please)
>
> == Progress ==
> Is any of the work done already?
> (When working on this in the repository, use the
>  "refs #YourTicketNumber"
>  message in the check-in message to tie commits
>  to this ticket)
> This related ticket exists:
> http://dev.plone.org/plone/ticket/10972

New description:

 '''Proposer:''' Ken Wasetis[[BR]]
 '''Seconder:''' Tom Gross[[BR]]
 [[BR]]
 == Motivation ==
 The link checker that is built into the Kupu editor is very useful for
 finding 'dead links' on a site (that will cause 404 errors) and such a
 link checker is a strict requirement for many organizations evaluating CMS
 tools.  If you didn't realize this feature existed, go to Site Setup in
 your Plone 3 site and then to the Visual Editor (kupu) and then to the
 Links tab and scan for broken links.  Cool, right?!

 Kupu is no longer the default editor as of Plone 4.x, and the new default
 editor, TinyMCE, has no such built-in capability.  Thus, by eliminating
 Kupu as the default editor, Plone can no longer claim to have a link
 checker 'out of the box'.

 == Assumptions ==
 Assume that Plone should have a built-in link checker (still) and that it
 is best to not have it tied to a 3rd-party editor product that could be
 replaced by a different default visual editor in future Plone releases.

 == Proposal & Implementation ==
 This functionality really should not be migrated to TinyMCE, IMHO, but
 rather componentized as its own product/egg that is a core feature of
 Plone, rather than of a 3rd-party editing tool, but if for some reason,
 grafting it onto TinyMCE is easier/faster, at least that approach would
 allow Plone to maintain this functionality with a standard installation of
 Plone 4.

 There exists a standalone Link Monitoring Service (LMS link checker)
 utility by GoCept that provides even greater capabilities than the kupu
 bundled link checker, and it may be good to review that code base and
 learn any lessons and integrate any features that can be, but this tool
 runs as a separate service that makes XML-RPC calls to interact with the
 CMS (pros and cons to that.)

 I think that this is the 'gold standard' of link checking, if we could
 bring the code up-to-date, but I don't think this is a great candidate for
 the 'out of the box' Plone install/experience.  I think it's akin to Plone
 integration with SOLR, which is an even more robust search option for
 Plone, but Plone still has a pretty nice search engine that it ships with,
 without integration with another service that runs on another port, and in
 SOLR's case, another programming language (Java.)

 If you agree that Plone should still have a built-in link-checker utility,
 please vote for this PLIP!

 == Deliverables ==
 The low-hanging fruit is to carve out the link checker utility of kupu as
 a standalone egg, if possible.  It should already have a lot of tests that
 can be modified and reused.

  * New product/egg for plone link checker
  * Unit tests
  * Localization
  * Documentation

 == Risks ==
 Additional bloat to Plone 4 core (but not to its typical 'installer'
 distributions since this was a module that actually ships as part of the
 optional kupu add-on product with a typicaly Plone 4 installation,
 already)

 == Participants ==
 Who is signed up to do the work?
 (Real names and usernames, please)

 == Progress ==
 Is any of the work done already?
 (When working on this in the repository, use the
  "refs #YourTicketNumber"
  message in the check-in message to tie commits
  to this ticket)
 This related ticket exists:
 http://dev.plone.org/plone/ticket/10972

--

Comment(by tom_gross):

 Since it is not developed any longer, we forked gocept.linkchecker and use
 it successfully for a mid sized Plone 3.3 site. I can provide the code to
 the community and help with further integration.

 The LMS is quite resource intensive and checking the links keeps one CPU
 busy all the time.

-- 
Ticket URL: <http://dev.plone.org/plone/ticket/10987#comment:5>
Plone <http://plone.org>
Plone Content Management System
_______________________________________________
PLIP-Advisories mailing list
plip-advisor...@lists.plone.org
http://lists.plone.org/mailman/listinfo/plip-advisories

Reply via email to