Although the bug is “repeatable” with the project attached to the bug report, if I create a similar project in 2.0.0 and open it in 2.0.4 alpha, the snap line sometimes appears when I open the project with Snap To on, and sometimes it doesn’t.
Do you have “Snap To” on in Selection Toolbar? If so, do the snap guides reappear if you turn Snap To off and reopen the project?
Yes, and if I turn it off then I can snap to the region boundaries again.
If I create a region label with Snap To turned on, it looks like I can snap to it whether Snap To is on or off. If I create it with Snap To off, I can only snap to it if Snap to is off.
If that behaviour is consistent then it’s an old snapping bug, not a 2.0.3 vs 2.0.2. Correct?
Looking in the aup file, it looks like the times for the problem labels have a lot more decimal places than the ones I can always snap to.
And it’s nothing to do with region labels, it just happens that I hadn’t created any point labels with Snap To on. I assume the problem is simply that it thinks it can’t get the cursor close enough to snap to them.
I didn’t try reopening the project. If you do that, perhaps there might be some rounding involved when it reads the times back in. That might explain the unpredictable behaviour you’re seeing.
It’s not directly about creating labels with Snap To off or on, and it’s not about one version of 2.0.x versus another.
I think it’s to do with the point you make later on about precision of the labels.
For some reason, the snap to the label breaks on more-than-two-decimal-places-accurate labels after reopening the project (but no, label positions are not rounded after closing and reopening the project).
Once Audacity opens a project, even the most accurate selection format (samples or hh:mm:ss + samples) can’t be relied on to snap to a label that has more than two decimal places of accuracy.
1 New project 44100 Hz, selection format hh:mm:ss + samples, Snap To on or off.
2 Generate tone 10 seconds.
3 Using Selection Toolbar, select from 2s 21315 samples to 7s 17640 samples. This gives sel0=“2.4833333333” sel1="7.4000000000 in the autosave file.
4 CTRL + B to label the selection and ENTER. This gives label t=“2.48333333” t1=“7.40000000” (the first label is rounded from 10 to eight decimal places as eight places is all that labels support). I can snap to both label edges whether Snap To is on or off.
5 Save but don’t close the project (doesn’t matter if Snap To is off or on). I can snap to both labels.
6 Close the project (this does not modify the AUP) then reopen the project. I now cannot snap to the left label edge that has eight decimals precision, but can still snap to the right labels edge that has one decimal precision.
7 Increment Selection Toolbar “End” to 7s 17641 samples.
8 Tracks > Add New > Label Track.
9 CTRL + B and ENTER to label the one-sample-larger selection in the new label track.
10 Close the first (smaller) label track above using [X]. Autosave file now shows the remaining label as label t=“2.48333333” t1=“7.40002268”. I can still snap to the right edge of the label when Snap To is on.
11 File > Save Project, I can still snap to the right edge of the label when Snap To is on.
12 Close then reopen the project. Now I cannot snap to either edge of the label when Snap To is on.
There is another philosophical question though, about Snap To using a coarser format than the one the selection was created with. If I drag and label a roughly half-second selection with Snap To “off” (or “on” with Selection Format set to an option including samples), then change Selection Format to hh:mm:ss + milliseconds and turn Snap To on, is it reasonable to expect to snap to that label if its edge is not on a millisecond? Since you could stop dragging at the snap line and make a selection from there, I don’t think it is reasonable.