Skip to content

<!-- {"freeze": true} --> to the first page actually changes the first page by invoking moving page #441

@nobuto-m

Description

@nobuto-m

Version

1.21.3 (rev:HEAD)

What happened?

The motivation here is to have a properly designed cover page imported from somewhere, but to manage the rest of the slides by deck since it's a brilliant tool for technical content.

How to reproduce:

  1. create a new deck deck new reproducer.md
  2. open the deck deck open reproducer.md
  3. edit the first page by hand with non-default layout (e.g. select the "blank" layout instead of "Title slide")
    Image
  4. Write something as the original cover slide not to be managed by deck
    Image
  5. Edit reproducer.md as follows to add a few slides by deck
---
presentationID: 1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M
---

<!-- {"freeze": true} -->
# This is my original cover slide that shouldn't be modified by deck

---

# foo

---

# bar

---
  1. Run deck to apply the change to add a few slides deck apply -vvv reproducer.md

Expected

The first slide stays as is, then two slides (foo and bar) are added.

Actual

The original first slide goes to the third page, then the content for the third page (bar) is written on top of the original cover page. The first slide ends up with an empty page with the "Title slide" layout. Please see the screenshot below.

Image

stdout

{"time":"2025-09-07T11:32:47.157200772+09:00","level":"DEBUG","msg":"using OAuth2 user authentication"}
{"time":"2025-09-07T11:32:47.157410884+09:00","level":"DEBUG","msg":"performing request","api":{"original_log_level":"debug","method":"GET","url":"https://slides.googleapis.com/v1/presentations/1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M?alt=json&prettyPrint=false"}}
{"time":"2025-09-07T11:32:47.838782269+09:00","level":"DEBUG","msg":"starting to apply pages","before_len":1,"after_len":3,"pages":[1,2,3]}
{"time":"2025-09-07T11:32:47.838930706+09:00","level":"INFO","msg":"applying actions","actions":[{"action_type":0,"titles":["This is my original cover slide that shouldn't be modified by deck"],"index":1,"move_to_index":0},{"action_type":0,"titles":["foo"],"index":2,"move_to_index":0},{"action_type":1,"titles":["bar"],"index":0,"move_to_index":0},{"action_type":2,"titles":["This is my original cover slide that shouldn't be modified by deck"],"index":1,"move_to_index":0},{"action_type":2,"titles":["foo"],"index":2,"move_to_index":1}]}
{"time":"2025-09-07T11:32:47.838953869+09:00","level":"INFO","msg":"batch updating presentation request","count":2}
{"time":"2025-09-07T11:32:47.839090995+09:00","level":"DEBUG","msg":"performing request","api":{"original_log_level":"debug","method":"POST","url":"https://slides.googleapis.com/v1/presentations/1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M:batchUpdate?alt=json&prettyPrint=false"}}
{"time":"2025-09-07T11:32:48.288253387+09:00","level":"DEBUG","msg":"prepared pages","count":2,"start_index":1}
{"time":"2025-09-07T11:32:48.288391545+09:00","level":"DEBUG","msg":"performing request","api":{"original_log_level":"debug","method":"GET","url":"https://slides.googleapis.com/v1/presentations/1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M?alt=json&prettyPrint=false"}}
{"time":"2025-09-07T11:32:48.619838387+09:00","level":"INFO","msg":"preparing to append new page"}
{"time":"2025-09-07T11:32:48.61986702+09:00","level":"INFO","msg":"skip applying page. because freeze:true","index":1}
{"time":"2025-09-07T11:32:48.619875747+09:00","level":"INFO","msg":"preparing to append new page"}
{"time":"2025-09-07T11:32:48.619890574+09:00","level":"INFO","msg":"preparing to apply page","index":0}
{"time":"2025-09-07T11:32:48.61989907+09:00","level":"INFO","msg":"batch updating presentation request","count":1}
{"time":"2025-09-07T11:32:48.619987916+09:00","level":"DEBUG","msg":"performing request","api":{"original_log_level":"debug","method":"POST","url":"https://slides.googleapis.com/v1/presentations/1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M:batchUpdate?alt=json&prettyPrint=false"}}
{"time":"2025-09-07T11:32:48.958532499+09:00","level":"DEBUG","msg":"performing request","api":{"original_log_level":"debug","method":"GET","url":"https://slides.googleapis.com/v1/presentations/1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M?alt=json&prettyPrint=false"}}
{"time":"2025-09-07T11:32:49.288991155+09:00","level":"INFO","msg":"batch updating presentation request","count":4}
{"time":"2025-09-07T11:32:49.289296314+09:00","level":"DEBUG","msg":"performing request","api":{"original_log_level":"debug","method":"POST","url":"https://slides.googleapis.com/v1/presentations/1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M:batchUpdate?alt=json&prettyPrint=false"}}
{"time":"2025-09-07T11:32:49.843484767+09:00","level":"INFO","msg":"deleting pages","indices":[0]}
{"time":"2025-09-07T11:32:49.843519782+09:00","level":"INFO","msg":"batch updating presentation request","count":1}
{"time":"2025-09-07T11:32:49.843628665+09:00","level":"DEBUG","msg":"performing request","api":{"original_log_level":"debug","method":"POST","url":"https://slides.googleapis.com/v1/presentations/1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M:batchUpdate?alt=json&prettyPrint=false"}}
{"time":"2025-09-07T11:32:50.1879359+09:00","level":"DEBUG","msg":"performing request","api":{"original_log_level":"debug","method":"GET","url":"https://slides.googleapis.com/v1/presentations/1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M?alt=json&prettyPrint=false"}}
{"time":"2025-09-07T11:32:50.546490907+09:00","level":"INFO","msg":"deleted pages","count":1,"indices":[0]}
{"time":"2025-09-07T11:32:50.546526634+09:00","level":"INFO","msg":"batch updating presentation request","count":6}
{"time":"2025-09-07T11:32:50.546659131+09:00","level":"DEBUG","msg":"performing request","api":{"original_log_level":"debug","method":"POST","url":"https://slides.googleapis.com/v1/presentations/1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M:batchUpdate?alt=json&prettyPrint=false"}}
{"time":"2025-09-07T11:32:50.952542635+09:00","level":"DEBUG","msg":"performing request","api":{"original_log_level":"debug","method":"GET","url":"https://slides.googleapis.com/v1/presentations/1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M?alt=json&prettyPrint=false"}}
{"time":"2025-09-07T11:32:51.366598223+09:00","level":"INFO","msg":"appended pages","count":2}
{"time":"2025-09-07T11:32:51.366625263+09:00","level":"INFO","msg":"applied pages","count":1}
{"time":"2025-09-07T11:32:51.366632897+09:00","level":"INFO","msg":"moving page","from_index":1,"to_index":0}
{"time":"2025-09-07T11:32:51.366641143+09:00","level":"INFO","msg":"batch updating presentation request","count":1}
{"time":"2025-09-07T11:32:51.366771857+09:00","level":"DEBUG","msg":"performing request","api":{"original_log_level":"debug","method":"POST","url":"https://slides.googleapis.com/v1/presentations/1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M:batchUpdate?alt=json&prettyPrint=false"}}
{"time":"2025-09-07T11:32:51.771728622+09:00","level":"DEBUG","msg":"performing request","api":{"original_log_level":"debug","method":"GET","url":"https://slides.googleapis.com/v1/presentations/1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M?alt=json&prettyPrint=false"}}
{"time":"2025-09-07T11:32:52.106768264+09:00","level":"INFO","msg":"moved page","from_index":1,"to_index":0}
{"time":"2025-09-07T11:32:52.106789504+09:00","level":"INFO","msg":"moving page","from_index":2,"to_index":1}
{"time":"2025-09-07T11:32:52.106795485+09:00","level":"INFO","msg":"batch updating presentation request","count":1}
{"time":"2025-09-07T11:32:52.106865916+09:00","level":"DEBUG","msg":"performing request","api":{"original_log_level":"debug","method":"POST","url":"https://slides.googleapis.com/v1/presentations/1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M:batchUpdate?alt=json&prettyPrint=false"}}
{"time":"2025-09-07T11:32:52.386851883+09:00","level":"DEBUG","msg":"performing request","api":{"original_log_level":"debug","method":"GET","url":"https://slides.googleapis.com/v1/presentations/1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M?alt=json&prettyPrint=false"}}
{"time":"2025-09-07T11:32:52.697169463+09:00","level":"INFO","msg":"moved page","from_index":2,"to_index":1}
{"time":"2025-09-07T11:32:52.697208806+09:00","level":"INFO","msg":"apply completed","presentation_id":"1AfzSGWQ1jOmkkBjH_ZEVjUgXC7-0IBvrJ4w0jOS2i9M","pages":[1,2,3]}

error.json

No error recorded.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions