- This project generally follows semantic versioning. For a version
x.y.z
,x
means a major (backward incompatible) change,y
means a minor (backward compatible) change, andz
means a patch (bug fix). Few versions may not strictly follow this rule due to historical reasons, though. - Versions before 1.0 are in initial development. APIs are not stable for these versions, even a
y
version can involve a breaking change, and only partial notable changes are summarized in this document. See full commit history in the source repository for details. - Backend server requirement in this document refers to the version of
webscrapbook
Python package (or PyWebScrapBook).
- Revoked the support of switching container for a capture, which requires a permission that forces Firefox to enable containers.
- Tab title is now taken when capturing a tab with
source
orbookmark
mode. - Added support of switching container for a capture in Firefox.
- Capturing a tab in a different container in Firefox is now disallowed to prevent an inconsistency.
- Miscellaneous improvements and fixes of the UI, internal code, and unit test suite.
- Fixed inconsistencies in recapture or merge-capture results when using certain capture helper options.
- Miscellaneous improvements of the internal code and test suite.
- Added
options
capture helper property, allowing for more reliable options overwriting, replacing theoptions
command. - Allow setting comment and merge capture in the details dialog when performing a capture with multiple pages.
- No longer download a linked file if the HTTP request fails when
capture.downLink.file.mode
isheader
for a capture. - No longer fetch title and favicon for an attachment file when capturing a bookmark.
- The main document of a merge capture is now captured and updated even if a captured version already exists.
- No longer generate a redirect page for a merge capture on a file.
- Fixed an issue where the
index.html
page is incorrectly overwritten when capturing a deep XHTML/SVG page. - Fixed an issue where an extra
index.json
is saved when capturing a file with depth set. - Fixed incorrect site favicon path for a page that meta-refreshes to another page when capturing bookmark.
- Fixed incorrect saving path when the item directory path contains "%" for a merge capture.
- Fixed an issue where a link resolving to a page that redirects to a page with a captured version was not rewritten in the newly captured page of a merge capture.
- Fixed an issue where
capture.downLink.urlExtra
is applied for a merge capture without depth set. - Fixed file renaming for the
application/ogg
MIME type in some older browsers. - Miscellaneous improvements of the UI, internal code, and unit test suite.
- The expanded/collapsed status of option groups in the capture detail dialog now persists.
- Fixed a CSS handling error for certain
url()
when capturing a page. - Fixed an error on certain invalid custom element names when capturing a page.
- Fixed script error when performing a merge capture on a file.
- Miscellaneous improvements of the UI and unit test suite.
- Added suppport of preserving manually assigned slots.
- Fixed an issue that capture selection does not work when the current selection is in a shadow DOM for Chromium.
- Fixed an issue that the current presentation of a canvas with non-2D context cannot be captured correctly.
- Fixed an issue that
Revert all erases
may cause a crash of the web page. - Fixed an issue that some annotation tools work incorrectly inside a shadow DOM.
- Fixed an issue that the status of some form elements in the erased content is not appropriately reverted when the page is resaved and reopened.
- Fixed an issue that shadow DOMs and constructed stylesheets in the erased content cannot be reverted when the page is resaved and reopened.
- Miscellaneous improvements and fixes of the UI, internal code, and unit test suite.
- Improved handling of the value of
checked
orselected
attributes when capturing a page. - No more record the original null value of special attributes generated by WebScrapBook when capturing a page.
- Fixed an issue that the selected status of option elements are not preserved when resaving a page.
- Fixed an issue that the
capture.rewriteCss
option is not honored by constructed stylesheets during a capture. - Fixed possible bad record value for shadowRoot.slotAssignment.
- Fixed missing constructed stylesheets when resaving a page.
- Fixed error when capturing a clonable shadow DOM.
- Reworked handling of further shadow DOM options.
- Adjusted the marking for closed shadow DOM contents.
- Added support of capturing closed shadow DOM contents.
- Miscellaneous improvements of the unit test suite.
- Fixed a script error during resaving a page in Firefox.
- No more refresh constructed stylesheets data if the browser doesn't support it when resaving a page.
- Miscellaneous improvements of the UI.
- Improved the data scheme for constructed stylesheets to prevent a catastrophic volume/memory usage on one shared among different DOMs. Also added an option Added an option
capture.adoptedStyleSheet
for it. - Miscellaneous improvements and fixes of the UI.
- Improved mobile navigation for scrapbooks.
- Miscellaneous improvements and fixes of the UI and internal code.
- The toolbar dialog now automatically closes when a command is invoked, which can be tweaked through option
ui.autoCloseBrowserAction
. - No more restrict single indexer or checker to be run.
- Miscellaneous improvements and fixes of the UI and internal code.
- Fixed a packaging error.
- Added support of capturing site favicon.
- Improved
capture.prettyPrint
for some elements inserted during a capture. capture.favicon
option is now honored when capturing a bookmark to a file.- Miscellaneous improvements and fixes of the internal code and unit test suite.
- Fixed an issue that the
@charset
rule in a CSS file is not correctly handled. - Fixed an issue that BOM in a CSS file is not taking as highest precedence for charset detection.
- Fixed an issue that the document charset and the
charset
attribute of alink
element are not honored when determining the encoding of a CSS file. - Miscellaneous improvements and fixes of the internal code and unit test suite.
- Fixed and improved capture helpers:
- Fixed an issue that many commands do not expand parameters whose value is a command correctly.
- A selector can now reset its reference node using
base
property. - Added "equal" command.
- "get_html" and "html" commands now support an additional
isOuter
parameter for getting and setting outer HTML. - "match" command now supports getting named capture groups.
- "insert" command can now move nodes by specifying a selector as nodeData.
- "insert" command now supports "replace" mode.
- "insert" command now automatically escapes the content of the generated comment nodes.
- "decode_uri" command now returns the original string if the input string is malformed.
- Improved localization for zh_CN.
- Improved CSS code for several internal pages.
- Fixed fatal error when a link with an invalid URL is encountered during an in-depth capture.
- Fixed bad tidying of a CSS containing a URL with escaped newlines.
- Fixed bad tidying of a CSS containing a URL with certain escaped chars.
- Fixed bad tidying of a CSS containing a bad URL token.
- Fixed a potential error for the editor and sidebar when dealing with certain special chars.
- Fixed bad tidying of a CSS rule having an attribute selector with a
|=
operator. - Use
text/javascript
as the default MIME type ofjs
files. - Miscellaneous improvements of the internal code and unit test suite.
- Fixed rewriting of srcset attribute that are separated by alternative spaces.
- Fixed bad URL rewriting in some complicated CSS.
- Fixed bad tidying of a CSS rule containing
:host
or:host-context
. - Fixed bad tidying of a CSS rule with a namespaced attribute selector.
- Fixed bad tidying of a nested CSS rule with a selector list.
- Fixed bad tidying of a resource of a font or keyframe referenced by a rule inside a shadow DOM.
- Fixed bad URL rewriting for links in an srcdoc iframe to the main page.
- Fixed bad URL hash rewriting when rebuilding links for an in-depth capture.
- Adjusted parameters handling of a content-type and content-disposition header in some rare cases.
- Miscellaneous improvements of the internal code and unit test suite.
- Added many tests for the internal API and falure tests for known issues..
- Fixed bad referrer when capturing
iframe[srcdoc]
headlessly. - Fixed possible random errors when capturing an inaccessible
iframe[srcdoc]
. - No more save
about:
pages for headless frames. - No more save resources whose URL uses an unsupported protocol.
- Miscellaneous improvements of the internal code and unit test suite.
- Rewrite the unit test suite with mocha.js.
- Fixed style images in a nested CSS rule in a shadow DOM be emptied when
Style images
isSave used
for a capture. - Fixed style images that apppear before the first base element be emptied when
Style images
isSave used
for a capture. - Fixed incorrect referrer for CSS resources for a document with customized base URL for a capture.
- Miscellaneous improvements of the internal code and unit test suite.
- Fixed an issue that downloading linked files and in-depth capture for a blob URL doesn't work.
- Fixed an issue that geolocation cannot be obtained from the sidebar in Firefox. (For Firefox < 101 a one-time grant in a non-sidebar window is required. For some old Firefox versions reloading the extension (by disabling and enabling, restarting the browser, etc.) after the grant is required.)
- Fixed an issue that clearing geolocation is not corretly saved.
- Fixed an issue that a blob URL cannot be captured in Firefox.
- Fixed an issue that MIME type is not detected for a blob URL for a capture in Chromium.
- Miscellaneous improvements of the internal code and unit test suite.
- Fixed an issue that meta and favicon in a shadow Root be taken for a capture.
- Fixed charset and content disposition parsing and meta charset rewriting in some special cases for a capture.
- Fixed meta refresh parsing in some special cases for a capture.
- Miscellaneous optimization of the internal code and unit test suite.
- Fixed CSS images for the root element be emptied when
Style images
isSave used
. - Fixed referrer policy related attributes for some elements.
- Fixed referrer policy handling for a document with multiple document referrer policy definition for a capture.
- Fixed base URL resolution for some spec-violating cases for a capture.
- Fixed meta element handling for some spec-violating cases for a capture.
- Miscellaneous optimization of the internal code and unit test suite.
- Added support of nesting CSS for a capture.
- Added support of referrer policy related attributes when performing a capture.
- Reworked
capture.referrerPolicy
to provide default referrer policy, or provide dominant referrer policy by prepending "+". - Fixed some bad referrer handling cases for downgrading requests for a capture.
- Fixed script error when
Rewrite styles
is(Advanced) tidy
for an external or imported CSS for a headless capture. - Fixed missing resources inside an at-rule like
@layer
whenStyle images
isSave used
for a capture. - Fixed
:root
and:scope
CSS rules not correctly handled whenRewrite styles
isTidy
for a capture. - Fixed an issue that constructed stylesheets are not captured in Firefox.
- Fixed downloading linked files and in-depth capture of hyperlink elements in an SVG or MathML for a capture.
- Fixed broken version 3 sitemap.
- Fixed missing links in an embedded SVG or MathML for sitemap.
- Fixed misleading links of
a[download], area[download], iframe[srcdoc]
elements for sitemap. - Miscellaneous optimization of the internal code and unit test suite.
- Added auto-fixing of item create/modify time when the input value is too short or too long, and auto-fill current time if empty.
- Fixed bad handling of ID-Date conversion for some rare cases.
- Fixed an issue that a cross-origin imported CSS is captured empty in Chromium >= 120.
- Added support of viewing HTZ/MAFF in a frame directly for Chromium >= 119.
- Fixed minimal compatible Chromium version to >= 73.
- Optimized code by removing compatibility code for old browsers.
- Improved unit test suite to support customizing tests.
- Fix compatibility issues to support Firefox Desktop and Android >= 68.2.
- Added Android support for the new policy of Firefox Add-on Site.
- Dropped support of Firefox Desktop < 69 and Firefox for Android < 113.
- Added a restriction for download workers, which can be tweaked through option
capture.downloadWorkers
.
- Bumped version of the
index.json
file generated by in-depth capture to 3. - Fixed bad path case of the
index.json
, which may cause invalid rebuilt links after a merge capture on a case-sensitive filesystem. - Added support of uploading/importing through copy and paste (for supported browsers).
- Fixed an issue that
Capture tabs
like actions in the context menu of a tab does not apply to all selected tabs. - Fixed an issue that item locating does not work in Firefox < 59.
- Remove obsolete debug code.
- Fixed script error in Chromium < 80 and Firefox < 74.
- Bumped server requirement to >= 2.0.1.
- Reworked scrapbook search as server sided.
- Optimized several scrapbook operations using new server-sided API.
- Added support of recent picked items for the item picker of the details dialog.
- Added support of erasing elements with XPath.
- Added support of permanently deleting item(s) by holding shift when performing a
Remove
. - Added
Empty recycle bin
command. - Added support of item exporting/importing.
- Added new options
scrapbook.autoCache.fulltextCache
andscrapbook.autoCache.createStaticSite
for automatic cache update. - Fulltext cache is now updated automatically when creating a new note or uploading files.
- Adjusted DnD effect for the sidebar tree.
- Improved UI for modal dialogs.
- Fixed an issue that erasing by selector may remove the custom elements loader.
- Fixed misbehaving tree scrollbar for the item picker dialog.
- Fixed some GUI issues of the target item selector for
Capture as
dialog when loaded with a non-root value. - Improved the title for
Capture as
dialog when no task is loaded. - Improved the GUI for the sidebar tree to make the dropping demarcation more clear.
- Fixed incorrectly escaped style/script contents in the captured page in some rare cases.
- Fixed broken
:defined
CSS rules in the captured page when scripts are not saved.
- Fixed server-related API error for some older browsers.
- Fixed an issue that a long word in a message is not wrapped somewhere.
- Fixed script error when copying info from a non-root scrapbook tree with folder-related formatters.
- Adjusted key order for the initlal JSON data of the advanced capture dialog.
- A title is now auto-generated when capturing a note through dragging a piece of rich text content.
- Added a tooltip for the title of the postit editor frame.
- Fixed an issue that a long postit title is not truncated.
- No more save a postit automatically if its content is not changed.
- Fixed an issue that the postit is poorly sized and can hardly be resized when the sidebar tree is large.
- Fixed an issue that an item without title shows marked alternative title in the search result.
- Small text files are now compressed when added to an archive.
- Added support of multiple include and exclude patterns for auto-capture.
- Fixed an issue that no-tree books are shown in
Capture as
dialog. - Fixed an issue of showing items unrelated with the current selected parent book in
Capture as
dialog. - Fixed an issue that item locking does not prevent a recapture or merge-capture.
- Fixed an issue that copying an item across scrapbooks can generate two transaction backups.
- Miscellaneous code optimization and refactoring.
- Fixed an issue that removing an item may get an error when the recycle bin is empty.
- Improved UI for
View captured pages
page.
- Improved UI for search results.
- Long lines are now wrapped.
- Adjusted indentation of results.
- Adjusted mouse hover effects.
- Improved the search page:
create:
andmodify:
conditions are now "or"-connected.book:
conditions are now matched by book ID.- Search results are now shown in the order of provided
book:
conditions. - A bad input for
sort:
andlimit:
is now forbidden. - Fixed an issue that the results of an interrupted search interminges into the current search.
- Fixed an issue that a sticky note cannot be dragged in Chromium >= 109.
- Fixed several possible errors for concurrent captures that saves as a folder to the default download directory.
- Adjusted the default retry times for saving a file to the backend server.
- Fixed a possible script error during handling
<noscript>
elements.
- Added
Capture mode
option forCapture as
dialog. - Improved UI for the sidebar:
- Whole title is now selected when entering the
Properties
dialog. - Added support of renaming during folder or note creation.
- Improved automatic scrolling for keyboard navigation and item locating.
- Improved displaying effect when dragging an internal link or image of an item.
- Prevent some link-like elements from being opened unexpectedly.
- Whole title is now selected when entering the
- Adjusted filename tidying strategy:
- Spaces, tabs, and linefeeds are now collapsed into a space.
- "~", "<", and ">" are now translated into "_".
- Fixed an error when downloading a file like " .ext".
- Fixed an error when downloading a file with certain Unicode chars like U+00A0 or U+00AD in some browsers.
- Fixed an error when downloading a file with Windows preserved filename like "CON" and "NUL.txt".
- Added support for pinning editor toolbar to the top (through a command in the
Save
dropdown).
- Fixed encoding error when viewing a MAFF/HTZ document with non-UTF-8 encoding.
- Fixed a potential error that a capture hangs during downloading.
- Improved some tooltips.
- Fixed an error when the downloaded folder name happens to contain bad ending chars after cropping.
- Fixed infinite loop when the downloaded folder cannot be generated.
- Fixed missing error message when an error occurs during folder name determination.
- Fixed an issue that the "attrs" property is ignored when the "value" property is set for the "insert" command of a capture helper.
- Added support of more URL placeholders for
capture.saveFilename
option. - Improved some tooltips.
- Fixed an error of iterating document.adoptedStyleSheets during a capture for Firefox since 101.0b8.
- Fixed an error of undefined document.adoptedStyleSheets during a capture for Firefox < 101.
- Fixed an error of accessing document.adoptedStyleSheets during a capture for Firefox 101.
- Added GUI for
NOSCRIPTs
capture option. - Minor option groups in the options page are now collapsed by default.
- Fixed an issue that
on*
attributes are not correctly handled ifcapture.styleInline
isremove
. - Fixed an issue that a unicode surrogate pair is not correctly handled during text cropping in certain cases.
- Fixed tooltips about filename length restriction.
- Fixed some issues of test code.
- Upgraded 3rd party libraries.
- Fixed an issue that an item moved into another item through drag-and-drop is placed at top rather than the bottem.
- Fixed an error when a capture is invoked from the context menu of a Firefox private window.
- Fixed an error when a capture is invoked from a private tab in Firefox for Android.
- Fixed an issue that the archive viewer doesn't open additional tabs for a MAFF with multiple web pages in a Firefox private window.
- Adjusted sidebar updating mechanism as a tentative fix for an issue that items get disappeared or misplaced after several move/link/copy operations.
- Fixed an issue that some control chars in a filename causes a downloading error.
- Fixed the bad path rule filler for in-depth capture.
- Fixed an inaccurate error log message for a link with an invalid URL.
- Intermediate data is now cached using indexedDB when available in Firefox.
- Fixed an issue that all tabs are treated as selected when performing a capture or so in a Chromium-based mobile browser.
- Disable drag-and-drop in a Chromium-based mobile browser to prevent an unfixed bug.
- Internal code optimization.
- Fixed an issue that the sidebar scrolling point is reset when the tree refreshes.
- Dropped support of legacy ScrapBook objects. (Use
wsb convert sb2wsb
andwsb convert migrate
command of PyWebScrapBook to convert pages captured using legacy ScrapBook to WebScrapBook format.)
- Added support of rewriting the
cite
attribute for several elements. - Added support of handling the
ping
attribute for anchor elements, with a new optioncapture.ping
to tweak the behavior. - Resources used only by inline styles are no more counted as used when
Style images
isSave used
. - Added support of
%folder%
and%path%
formatters forCopy info
command of the sidebar.
- Added support of capturing the source document embedded through an
<embed>
tag. - Added support of handling legacy HTML attributes for a capture:
embed[pluginspage]
,object[codebase]
,object[archive]
,object[classid]
,applet[codebase]
,applet[classid]
. - Fixed an issue of message length error for Chromium if a page to be captured or saved exceeds around 50MB.
- Fixed an issue that
View source
in the current tab doesn't create new tabs when multiple items are selected. - Fixed an issue that a link like "foo.html#?bar" is not shown in the sitemap.
- Fixed an issue that a frame page embedded through
<embed>
is not shown in the sitemap. - Fixed an issue that a resource embedded through
<embed>
,<object>
, or<applet>
may not be blocked correctly in the viewer for Chromium.
- Fixed an issue that a line of a rule for downloading links that is prefixed with spaces is not treated as a comment.
- No more take the link text as title (but available in the dropdown) when capturing a link for
Capture as
dialog. - Allow the rule filler for in-depth capture be used for a capture with multiple tasks.
- Added
Same domain
,Include with filter
, andExclude with filter
rule helpers forCapture as
dialog. - Fixed an issue that links covered by multiple selection ranges are duplicately included in a batch capture dialog.
- Fixed an issue that a failure to save the index file when saving as folder is not treated as a capture failure.
- Fixed an issue that a failure to save the file when saving as file is not treated as a capture failure.
- Fixed an issue that an incorret option value is sometimes get when the options change.
- Added
Delay for capturing linked pages
option for theCapture as
dialog. - Added support of single click invocation of the toolbar button when only one command is shown.
- No more force all resources be data URL when an iframe with a data URL source is saved as srcdoc.
- Fixed an issue that the srcdoc attribute of a frame element is removed whan
Frames
option isBlank
. - Fixed an issue that the URL of a meta refresh is not correctly resolved when the page has a base element.
- Fixed incorrect source URL in the log message when there's an error during capturing a frame.
- The editor toolbar now appears at the top.
- Sticky notes now appear at the top, except for being under the editor toolbar.
- Implemented a more accurate server tree change detection algorithm to cover more possible cases.
- Added modifiers support for toolbar commands.
- Added multi-tab support for
Batch capture selected links
toolbar command. - Added drag-and-drop support for
Batch capture all tabs
andBatch capture selected links
toolbar commands. - Fixed an issue that sidebar fails to reload when data changes rapidly within a second.
- Fixed a siderbar styling issue for older Firefox.
- Fixed an error of editing a created postit in Firefox.
- Fixed several UI issues for the sidebar.
- Adjusted scrollings for the item picker dialog.
- Fixed an issue that a capture may be interrupted occasionally when saved to folder as folder.
- Minor UI improvements.
- Added a capture helper command:
isolate
. - Fixed incorrect title for
Capture frame as
. - Improved the GUI of the target item selector for
Capture as
dialog. - Added a rule filler for in-depth capture for
Capture as
dialog. - No more include URLs with non-http(s) protocol for batch capture.
- Fixed an issue that the item picker for
Capture as
dialog incorrectly allows multi-selection through holding Shift. - Various minor bug fixes and UI improvements.
- Fixed several GUI issues for the
Capture as
dialog for a multi-item capture.
- Fixed an issue that
Capture again
does not work correctly ifSave captured data to
is notBackend server
. - Added a link for the backuped page for re-capture if available. (Requires server >= 0.46)
- Added support of
mime:
prefix to filter linked files by MIME type. - Fixed an issue that a linked file with no Content-Type header is not correctly handled by the file type filter.
- Fixed an issue that a reloaded iframe has inconsistent editor status with the main frame.
- A linked web page is no more downloaded as a resource file if
Depth to capture linked pages
is set. - A linked attachment web page is now correctly treated as a resource file.
- Added
Extra URLs
option for the capture dialog. - Fixed an issue that size limit does not work for a linked page with depth 1.
- Fixed an issue of capturing unexpected linked pages in a frame whose source is data protocol.
- Fixed an issue that a link in an extension tab cannot be opened in some browsers.
- Improved GUI for the
Capture as
dialog. - A configured option whose value is same as default now updates with the app.
- Implemented new GUI for the
Capture as
dialog. - Various bug fixes and minor UI improvements.
- Fixed an issue that some resource files such as SVG be incorrectly included for links rebuilding.
- An error during links rebulding for a document no more terminates the capture task.
- Fixed missing meta attributes for the index.html when capturing a XHTML or SVG file.
- Pages other than index.html now records only source URL in meta attributes.
- Header content type now takes higher priority than filename when checking links for downloading.
- Added a new
capture.downLink.doc.mode
option for capturing linked pages using tab mode. - Added
View sitemap
editor tool. - Improved UI and tooltips for edit and postit dialog pages.
- Added support of saving meta refreshed pages for in-depth capture.
- An automatically opened remote tab is now closed on error.
- An error on capturing a linked page no more terminates the capture task.
- Improved internal processing and log messages for remote tab and in-depth capture.
ui.notifyPageCaptured
now defaults to true.- Require server address field be filled when a backend server related option is used.
- Improved UI and tooltips for the options dialog.
- Added capture helper commands:
concat
,slice
,upper
,lower
,encode_uri
,decode_uri
,add
,subtract
,multiply
,divide
,mod
, andpower
. - Reworked capture helper commands
attr
,css
, andoptions
to support the parameter pattern[[name1, value1], [name2, value2], ...]
. - Renamed capture helper commands
has_elem
tohas_node
. - Reworked capture helper command
insert
to take JSON node data. - Reworked capture helper commands
match
andreplace
to always return a string value. - Reworked UI for the
Capture as
dialog asBatch capture
andAdvanced capture
dialogs. - Break words for option textareas.
- Improved some option tooltips.
- Improved UI for the
Capture as
dialog. - Improved some option tooltips.
- Added a new
capture.faviconAttrs
option for saving favicon-like resources. - Adjusted UI for the
Capture as
dialog. - Added support of sidebar auto-rebuilding after a capture, with a new option
scrapbook.autoRebuildSidebars
to tweak the behavior..
- Fixed an issue that downloading links not working in the archive page viewer.
- Fixed a packing error.
- Fixed capture error for a page with a link element without href attribute.
- Fixed an issue that noscript content is not correctly saved when captured using Firefox.
- Fixed an issue that noscript content is not correctly saved when capturing source.
- Fixed an issue that noscript content becomes escaped after saved by the editor.
- Fixed a compatibility issue for saved tree data with old browsers not supporting ES2019.
- Added a new
viewer.viewAttachments
option to force opening attachments using the archive page viewer.
- Added hotkeys for batch capture page.
- Fixed an issue that clicked links with specified target or base URL not working in the archive page viewer.
- Fixed an issue that modified options not taken when invoking a capture in some ways.
- Imported options without saving are no more applied.
- Support auto-updating options for sidebar and more scrapbook-related pages.
- Bumped version of the
index.json
file generated by in-depth capture to 2. - Added support of depth > 0 for merge capture.
- Added
View source page
editor tool. - Fixed an issue that the URL of a redirected or meta refreshed page is not correctly rewritten for in-depth capture.
- Fixed an issue that resources under file: protocol cannot be captured.
- Fixed an issue that some context menu commands don't work.
- Added
Find previous/next annotation
editor tool.
- Optimized code for internal cache for better performance.
- Adjusted schema for IndexedDB-related internal cache for better performance.
- Added and adjusted several default highlighter style options.
- Adjusted default highlighter styles.
- Added support of
imagesrcset
attribute for<link>
s. - Added support of
rel
valuemodulepreload
,prerender
,dns-prefetch
, orpreconnect
for<link>
tags. - Added a new
capture.prefetch
option to tweak handling of prefetch-like<link>
tags. - Added
capture.contentSecurityPolicy
option to tweak handling ofcontent-security-policy
meta tag andnonce
attribute. - Removed
capture.removeIntegrity
option. crossorigin
attribute is now removed only when a resource is saved.integrity
attribute is now removed only for related tags.
- Added support of capturing the source document embedded through an
<object>
tag. - No more save XHTML or SVG files as srcdoc when saving as single HTML.
- Improved config checking of capture helpers and auto-capture to prevent more possible bad input.
- Fixed an issue that unfetchable resources are not skipped during internalization.
- Fixed an error when internalizaing a single HTML item. Internalized resources are now saved as data URLs in such case.
- Capture the original page rather than the meta refreshed target page if the meta refresh time is non-zero.
- Improved the tooltips about auto-capture.
- Adjusted handling of some HTTP headers and HTML attributes to conform with the spec better.
- Fixed some potential errors for ASCII whitespace handling.
- Fixed a potential error handling for nested svg and math elements.
- Preloads and prefetches are now removed by default, with a new option
capture.preload
to tweak the behavior. - Shadow DOMs are saved as
data-scrapbook-shadowdom
attribute in place ofdata-scrapbook-shadowroot
, with simplified data structure and smaller size.
- Hash part of source URL is now considered when viewing an item.
- Fixed an issue that URL hash is not included in the source URL for the captured item.
- Fixed several issues on handling an item whose index file is an archive.
- Added support of more modes for
Form status
capture option. - Added a default option for the backend server URL option.
- Added support of enabling/disabling undo feature from its context menu.
- Added support of
Home
andEnd
for sidebar key navigation. - Added a message for a scrapbook configured as
no_tree
in the sidebar. - Added support of
limit:
command for search. - Fixed an issue that certain interactive properties, such as form status, canvas, and shadow DOM, are lost after an unerase in a re-loaded document.
- Fixed an issue that unrelated content in the document be refreshed after an undo.
- Fixed an issue that certain interactive properties, such as canvas and shadow DOM, are lost after an undo.
- Fixed missing support of opening in new tab for
View index page
sidebar command. - Fixed an issue that the opened postit is not saved when switching scrapbook.
- Fixed an issue that switching scrapbook after a change of server config can load incorrect tree data.
- Fixed an error causing the copy item dialog in a manage dialog not working.
- Fixed an error causing unit tests not working.
- Added options for whether to open in new tab for sidebar operations. Most operations now defaults to open in the active tab.
- Added support of opening in new tab by holding Ctrl or Shift for sidebar operations.
- Added support of adding as child item by holding Alt when creating a new item in the sidebar.
- Added support of recursive copy info by holding Ctrl or Shift.
- Allow opening multiple search tabs from the sidebar.
- Fixed an issue of missing
index
key when invokingcapture as
through dragging and dropping. - Fixed an error when invoking copy info with an item having a malformed source URL.
- Improved GUI for batch capture dialog.
- Added support of captured pages notification for captures during the same browser session.
- Moved option
scrapbook.notifyPageCaptured
toui.notifyPageCaptured
. - Notification of captured pages now updates when a capture succeeds.
- Reworked duplicates detection for auto-capture to check for captures during the same browser session and items in the backend server.
- Fixed an issue of script error for Firefox for Android < 55.
- Fixed a regression that saved filename for a capture does not have
/
s generated by a placeholder tidied.
- Added support of context displaying for the search page.
- No more save a file named
history.rdf
, which is preserved by MAFF format, when capturing a page. - Fixed an issue of occasional unexpected extending of highlight range for the page editor.
- Fixed an issue that a text crop may cut between a unicode surrogate pair.
- Improved GUI for options verification.
- Reworked the syntax of
capture.saveFilename
option. - Added support of auto-capture in the options.
- Added
copyinfo
command to sidebar.
- Added support of viewing folder items.
- Added support of editing a postit in the sidebar.
- Added support of
tc:
,charset:
, andlocation:
search commands. - Improved GUI for note and postit editors.
- Fixed several compatibility issues in Firefox 52.
- Bumped server requirement to >= 0.36.
- Added support of note for a backup.
- Automatically create a tree backup for each transaction to prevent an accidental file corruption, with a new option
scrapbook.transactionAutoBackup
to tweak the behavior.
- Fixed an issue that nothing is captured when selecting exactly a single node.
- Fixed an issue that nodes outside the html node are not captured.
- Improved capture selection to support more special cases, such as a selection outside of the body node.
- No more generate linefeeds for the capture/save content by default, with a new option
capture.preffyPrint
to tweak the behavior. - Added
attach link
to the editor tools.
- Fixed an issue that special chars (e.g.
<
,&
, and>
) in a postit item are not loaded correctly.
- WebScrapBook loaders are now injected as last elements in
<body>
rather than after<body>
. - No more create loaders for non-annotated highlights.
- Added support of copying item IDs of the tree selection via Ctrl+C.
- Fulltext cache is now updated automatically only when
Generate fulltext cache
option is checked.
- Added support of capturing via dragging a browser action command into the sidebar.
- Added support of geolocation metadata.
- Reworked option
capture.requestReferrer
ascapture.referrerPolicy
, which supports options as theReferrer-Policy
HTTP header. - Added option
capture.referrerSpoofSource
.
- Added support of post-it items.
- Changed internal identifier for auto-close dialog option.
- Added support of
Capture as
.
- Added a capture option
Save resources sequentially
. - Reworked auto-close dialog option to support more modes.
- Added support of in-depth capture.
- Changed internal identifier for some capture links (download linked files) related options.
- Added
Copy
command to sidebar. - Added support for cross-scrapbook drag-and-drop.
- The descendant items are now automatically deselected when an item is toggled collapsed.
- Fixed an issue that the sidebar is unlocked when a dialog is dismissed, even though the command is still running.
- Added support of editing created and modified time in the sidebar.
- Added support of
index:
command for the search page.
- Bumped server requirement to >= 0.29.
- Added
Sort
command to sidebar. - Added
Capture again
command to sidebar.
- Fixed styling error for
site
andcombine
types.
- Added an option
Show hint when browsing a page having been captured
and a toolbar commandView captured pages
.
- Reworked
Batch capture
asBatch capture all tabs
, and removeCapture all tabs
. - Fixed an issue that backup files are generated for auto fulltext cache.
- Changed view status caching format for sidebar to avoid a comflict within different views.
- Added support of top-level null value for *.js tree files.
- Added a capture option to specify delay time before capturing an auto-launching tab.
- Added a capture option to insert an infobar.
- Improved capture helpers:
- Added
name
anddebug
properties. - Added
options
andinsert
commands. - Added support to debug a capture helper commands using
*
prefix. - Improved error reporting.
- Added
- Improved sidebar and manage dialog:
- Adjusted command button to show scrapbook-related commands rather than echo the context menu.
- Added
Search within
command to sidebar. - Added
Recover
command for a recycle bin to sidebar.
- Reworked editor toolbar:
- Added context menu in place of sub-menu buttons. This prevents toolbar overflow on mobile browsers.
- Enlarged toolbar and buttons.
- Bumped server requirement to >= 0.23.
- Reworked site indexer:
- Moved site indexer button from browser action to options page.
- Shifted site indexer to server-side, with greatly improved performance, and minor format change. (Consider recreate fulltext cache.)
- Automatically update fulltext cache when a web page or note is captured or edited.
- Added data checker. Moved the feature of importing non-indexed web page files through site indexer to data checker.
- Dropped support of site indexing through dragging and dropping local filesystem folders or ZIP files.
- Dropped support of importing legacy ScrapBook data through site indexer. (Use
wsb convert sb2wsb
of PyWebScrapBook instead.)
- Added
disabled
capture helper property.
- Added
Accept
header for requests to the backend server. This allows the reverse proxy server or upper server to response with a more appropriate format to the client.
- Added support of self version checking. An error will now be thrown if the extension version is too old to work with the corresponding backend server.
- A request for acquiring an access token now uses a POST rather than GET method.
- Bumped server requirement to >= 0.17.
- Merged record related capture options.
- Added support of GUI editor of annotated marker for page editor.
- Added support of annotated marker for page editor.
- Added support of sticky note for page editor.
- Dropped support of using filesystem API for viewing a page archive.
- Added search and edit to the sidebar.
- Added capture helper, in place of the preclude option.
- Bumped server requirement to >= 0.12.
- Implemented new transferring protocol to improve the performance of indexing through the backend server.
- Added support of context menu for the sidebar.
- Added a capture option to remove hidden elements.
- Added a capture option to preclude elements.
- Added a capture option to limit resource size to download.
- Dropped support of
Scripted single HTML
format for a page capture.
- Added support to capture shadowRoot content.
- Fixed an issue that page editor is loaded for every page if backend server URL is not set.
- Added page editor.
- Bumped server requirement to >= 0.8.
- Added support for
no_tree
scrapbooks.
- Added support of drag and drop to manage scrapbook items.
- Added support to capture dynamic CSS.
- Fixed a packaging error for 0.44.0.
- Bumped server requirement to >= 0.6.
- Now use
save
instead ofupload
action to upload a file.
- Bumped server requirement to >= 0.3.
- Bumped server requirement to >= 0.2.
- Added support of backend server version checking. An error will now be thrown if the backend server version is too old to work with this extension.
- Added support for sidebar and backend server.
- Dropped support of Firefox < 52 and Chromium < 55.
- Refactor the code to work with async function.
- Dropped support of JavaScript when viewing a page archive, due to a security concern.
- Added unit tests.
- Added site indexer.
- First public release.