Re: [O] re-search-forward hang in org-link-search

2015-08-18 Thread Matthew MacLean
No worries. If anything it makes be feel better about my own silliness
earlier.

On Tue, Aug 18, 2015 at 11:54 AM, Bastien b...@gnu.org wrote:

 Matthew MacLean archen...@gmail.com writes:

  Maybe the recursive-whitespace Regular Expressions that Pip Cet
  mentioned are not Emacs freezers in Emacs 25?

 No... this is just me using the patched version, sorry for the noise.

 --
  Bastien



Re: [O] re-search-forward hang in org-link-search

2015-08-18 Thread Bastien
Hi Matthew,

I've no problem with the link in hang.org.

This is with Org 8.3.1 and Emacs 25.0.50.18.

-- 
 Bastien



Re: [O] re-search-forward hang in org-link-search

2015-08-18 Thread Matthew MacLean
Fascinating.

Maybe the recursive-whitespace Regular Expressions that Pip Cet mentioned
are not Emacs freezers in Emacs 25?

On Tue, Aug 18, 2015 at 11:30 AM, Bastien b...@gnu.org wrote:

 Hi Matthew,

 I've no problem with the link in hang.org.

 This is with Org 8.3.1 and Emacs 25.0.50.18.

 --
  Bastien



Re: [O] re-search-forward hang in org-link-search

2015-08-18 Thread Bastien
Matthew MacLean archen...@gmail.com writes:

 Maybe the recursive-whitespace Regular Expressions that Pip Cet
 mentioned are not Emacs freezers in Emacs 25?

No... this is just me using the patched version, sorry for the noise.

-- 
 Bastien



Re: [O] re-search-forward hang in org-link-search

2015-08-18 Thread Bastien
Matthew MacLean archen...@gmail.com writes:

 No worries. If anything it makes be feel better about my own
 silliness earlier.

Well, I'm good at making people feeling better about their own
silliness, so you're most welcome.

-- 
 Bastien



Re: [O] re-search-forward hang in org-link-search

2015-08-18 Thread Pip Cet
I'm using Emacs 25.0.50.26, for what it's worth, and they still freeze
Emacs here. I don't recall precisely when the problematic regular
expressions were introduced, though, that might have been after 8.3.1?

On 8/18/15, Matthew MacLean archen...@gmail.com wrote:
 Fascinating.

 Maybe the recursive-whitespace Regular Expressions that Pip Cet mentioned
 are not Emacs freezers in Emacs 25?

 On Tue, Aug 18, 2015 at 11:30 AM, Bastien b...@gnu.org wrote:

 Hi Matthew,

 I've no problem with the link in hang.org.

 This is with Org 8.3.1 and Emacs 25.0.50.18.

 --
  Bastien





Re: [O] re-search-forward hang in org-link-search

2015-08-14 Thread Pip Cet
Hi Nicolas,

On Thu, Aug 13, 2015 at 11:37 PM, Nicolas Goaziou
m...@nicolasgoaziou.fr wrote:
 Hello,

 Pip Cet pip...@gmail.com writes:

 Can you try this patch? That appears to fix the issue here, at least
 for this one file, at the cost of yet another shy group added to the
 regular expression.

 Thanks for the patch.

 Would you mind providing a proper commit message and send it again using
 git format-patch?

Of course, here we go. Please let me know if there's anything wrong
with it still. (I don't think gmail copy-and-paste preserves tabs, so
this is sent as an attachment. Is that okay, for future reference?)

It would be great if README_contribute could be updated no longer to
refer to ChangeLog files, and instead refer to the Emacs CONTRIBUTE
file (it would also be great if the special git commit messages could
be generated as easily as C-x 4 a does for ChangeLog entries. What do
people use for that?); I've attached a patch to change that as well,
but I'm not sure whether it's still properly a TINYCHANGE. Again, it
would be great if you could let me know if there's anything wrong with
it so I can avoid making the same mistake for future contributions.

Thanks!
Pip
From 4dac047849bdb44b631f0b8d7013eb0e15a0f512 Mon Sep 17 00:00:00 2001
From: Philip pip...@gmail.com
Date: Thu, 13 Aug 2015 18:49:56 +
Subject: [PATCH 1/2] org.el: fix recursive regular expression backtracking

	* org.el (org-link-search): Avoid recursive regexp
	backtracking behaviour when following search links.

	http://article.gmane.org/gmane.emacs.orgmode/100010

	TINYCHANGE
---
 lisp/org.el | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/lisp/org.el b/lisp/org.el
index a908d9e..7f46687 100755
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -11128,18 +11128,18 @@ of matched result, with is either `dedicated' or `fuzzy'.
   \\[[0-9]*\\(?:%\\|/[0-9]*\\)\\]
   wspaceopt
   \\)))
-		  (sep (concat \\(?: wspace +\\| cookie +\\)))
+		  (sep (concat \\(?:\\(?: wspace \\| cookie \\)+\\)))
 		  (re (concat
 			   org-outline-regexp-bol
 			   \\(?: org-todo-regexp [ \t]+\\)?
 			   \\(?:\\[#.\\][ \t]+\\)?
 			   \\(?: org-comment-string [ \t]+\\)?
-			   sep *
+			   sep ?
 			   (let ((title (mapconcat #'regexp-quote
 		   words
-		   (concat sep +
+		   sep)))
 			 (if starred (substring title 1) title))
-			   sep *
+			   sep ?
 			   (org-re \\(?:[ \t]+:[[:alnum:]_@#%%:]+:\\)?)
 			   [ \t]*$)))
 		 (goto-char (point-min))
-- 
2.5.0

From f52f2e428d5d981ad6db43cd8c73724c8d62b037 Mon Sep 17 00:00:00 2001
From: Philip pip...@gmail.com
Date: Fri, 14 Aug 2015 16:42:02 +
Subject: [PATCH 2/2] 	Remove references to ChangeLog.

	* README_contribute: remove references to ChangeLog.  Instead,
	reference the Emacs `CONTRIBUTE' file which documents how to
	format git commit messages.

TINYCHANGE
---
 README_contribute | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/README_contribute b/README_contribute
index 3e1ef6d..63ed0bd 100644
--- a/README_contribute
+++ b/README_contribute
@@ -58,10 +58,10 @@ development.
  new mechanism to make sure all changes end up in the right
  place.
 
-   - Creating and pushing a change to the Org-mode core requires
- you also to provide ChangeLog entries.  Just press `C-x 4 a'
- in each function or variable you have modified and describe
- the change you made in the ChangeLog buffer/file.
+   - Org-mode no longer uses ChangeLog entries to document
+ changes. Instead, special commit messages are used, as
+ described in the `CONTRIBUTE' file in the main Emacs
+ repository.
 
- Among other things, Org-mode is widely appreciated because
  of its simplicity, cleanness and consistency.  We should try
-- 
2.5.0



Re: [O] re-search-forward hang in org-link-search

2015-08-14 Thread Nicolas Goaziou
Pip Cet pip...@gmail.com writes:

 Of course, here we go. Please let me know if there's anything wrong
 with it still. (I don't think gmail copy-and-paste preserves tabs, so
 this is sent as an attachment. Is that okay, for future reference?)

 It would be great if README_contribute could be updated no longer to
 refer to ChangeLog files, and instead refer to the Emacs CONTRIBUTE
 file (it would also be great if the special git commit messages could
 be generated as easily as C-x 4 a does for ChangeLog entries. What do
 people use for that?); I've attached a patch to change that as well,
 but I'm not sure whether it's still properly a TINYCHANGE. Again, it
 would be great if you could let me know if there's anything wrong with
 it so I can avoid making the same mistake for future contributions.

Thanks for your patches. They look good. I applied them with very minor
tweaks, explained below.

 Subject: [PATCH 1/2] org.el: fix recursive regular expression backtracking

Fix needs to be capitalized.


   * org.el (org-link-search): Avoid recursive regexp
   backtracking behaviour when following search links.

Emacs uses American spelling: behavior.

 Subject: [PATCH 2/2]  Remove references to ChangeLog.

No full stop at the end of the commit summary.

   * README_contribute: remove references to ChangeLog.  Instead,

Remove

 +   - Org-mode no longer uses ChangeLog entries to document

We try to change Org-mode into Org mode whenever we can.

 + changes. Instead, special commit messages are used, as

Sentences are separated with two spaces.


Regards,



Re: [O] re-search-forward hang in org-link-search

2015-08-13 Thread Pip Cet
Can you try this patch? That appears to fix the issue here, at least
for this one file, at the cost of yet another shy group added to the
regular expression.

diff --git a/lisp/org.el b/lisp/org.el
index a908d9e..7f46687 100755
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -11128,18 +11128,18 @@ of matched result, with is either
`dedicated' or `fuzzy'.
   \\[[0-9]*\\(?:%\\|/[0-9]*\\)\\]
   wspaceopt
   \\)))
-  (sep (concat \\(?: wspace +\\| cookie +\\)))
+  (sep (concat \\(?:\\(?: wspace \\| cookie \\)+\\)))
   (re (concat
org-outline-regexp-bol
\\(?: org-todo-regexp [ \t]+\\)?
\\(?:\\[#.\\][ \t]+\\)?
\\(?: org-comment-string [ \t]+\\)?
-   sep *
+   sep ?
(let ((title (mapconcat #'regexp-quote
words
-   (concat sep +
+   sep)))
  (if starred (substring title 1) title))
-   sep *
+   sep ?
(org-re \\(?:[ \t]+:[[:alnum:]_@#%%:]+:\\)?)
[ \t]*$)))
  (goto-char (point-min))

(Sorry if this arrives in duplicate, I had neglected to configure
Gmail to default to reply-to-all behaviour).


On Thu, Aug 13, 2015 at 6:36 PM, Matthew MacLean archen...@gmail.com wrote:

 On Thu, Aug 13, 2015 at 12:26 PM, Pip Cet pip...@gmail.com wrote:

 It's not an Emacs bug. Your regular expression whittles down to:

 (defvar hang-re ^\\*+ *Mawile\\(?:[ ]+\\)+stuff\\(?:[ ]+\\)*$)

 or even

 (defvar hang-re \\(?:[ ]+\\)+s)

 That expression matches the string of spaces separating the first
 Mawhile headline from its tags in many many different ways, and is one
 of the type of regular expressions warned about in the (Emacs Lisp
 Reference) manual. We shouldn't be generating it, and it is a bug, but
 it is in Org, not Emacs.


 Ah... Well, this is the reason I posted it here first.

 In that case, the bug is present as late as
 a97f2c1830910d7a239dcbb98e200a6e4038acaa.
diff --git a/lisp/org.el b/lisp/org.el
index a908d9e..7f46687 100755
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -11128,18 +11128,18 @@ of matched result, with is either `dedicated' or 
`fuzzy'.
  \\[[0-9]*\\(?:%\\|/[0-9]*\\)\\]
  wspaceopt
  \\)))
- (sep (concat \\(?: wspace +\\| cookie +\\)))
+ (sep (concat \\(?:\\(?: wspace \\| cookie \\)+\\)))
  (re (concat
   org-outline-regexp-bol
   \\(?: org-todo-regexp [ \t]+\\)?
   \\(?:\\[#.\\][ \t]+\\)?
   \\(?: org-comment-string [ \t]+\\)?
-  sep *
+  sep ?
   (let ((title (mapconcat #'regexp-quote
   words
-  (concat sep +
+  sep)))
 (if starred (substring title 1) title))
-  sep *
+  sep ?
   (org-re \\(?:[ \t]+:[[:alnum:]_@#%%:]+:\\)?)
   [ \t]*$)))
 (goto-char (point-min))


Re: [O] re-search-forward hang in org-link-search

2015-08-13 Thread Matthew MacLean
On Thu, Aug 13, 2015 at 12:26 PM, Pip Cet pip...@gmail.com wrote:

 It's not an Emacs bug. Your regular expression whittles down to:

 (defvar hang-re ^\\*+ *Mawile\\(?:[ ]+\\)+stuff\\(?:[ ]+\\)*$)

 or even

 (defvar hang-re \\(?:[ ]+\\)+s)

 That expression matches the string of spaces separating the first
 Mawhile headline from its tags in many many different ways, and is one
 of the type of regular expressions warned about in the (Emacs Lisp
 Reference) manual. We shouldn't be generating it, and it is a bug, but
 it is in Org, not Emacs.


Ah... Well, this is the reason I posted it here first.

In that case, the bug is present as late as
a97f2c1830910d7a239dcbb98e200a6e4038acaa.


Re: [O] re-search-forward hang in org-link-search

2015-08-13 Thread Nicolas Goaziou
Hello,

Pip Cet pip...@gmail.com writes:

 Can you try this patch? That appears to fix the issue here, at least
 for this one file, at the cost of yet another shy group added to the
 regular expression.

Thanks for the patch.

Would you mind providing a proper commit message and send it again using
git format-patch?


Regards,

-- 
Nicolas Goaziou



Re: [O] re-search-forward hang in org-link-search

2015-08-13 Thread Matthew MacLean
Yep! This patch works on the original file I noticed the behaviour.

On Thu, Aug 13, 2015 at 12:50 PM, Pip Cet pip...@gmail.com wrote:

 (Sorry if this arrives in duplicate, I had neglected to configure
 Gmail to default to reply-to-all behaviour).


I did that earlier as well, it's a curse!