All Versions
309
Latest Version
Avg Release Cycle
12 days
Latest Release
366 days ago
Changelog History
Page 13
Changelog History
Page 13
-
v2.97.0 Changes
September 25, 2019- π The simplified
APOS_BUNDLE=1
feature for asset deployment in the cloud now uses the actualtar
utility when extracting assets locally, rather than thetar
npm module, as a blocking bug was encountered and the actual utility is faster. - π Improved support for subclasses of
apostrophe-rich-text-widgets
. These now receive the same CSS UX considerations and store their content under the appropriate widget name. This opens the door to the newtiptap
option offered by the latest release of apostrophe-tiptap-rich-text-widgets, which can be used to selectively enable or disable the use of tiptap as an alternative to CKEditor for some subclasses but not others. - π± Low-level support for namespacing asset themes. By default this has no effect, however if getThemeName is overridden to return a theme name then asset masters, minified assets, bundles in the collection, etc. all get namespaced to play side by side with other themes used by other apos objects in the same project. Meant for use with apostrophe-multisite, this is not equivalent to a Wordpress or Drupal theme as such.
- π The widget editor's
afterShow
method takes no callback; removed an invocation that did not make sense. Thanks to Amin Shazrin for this contribution. - π Improved sizing for video widgets. This is now based on the parent element. Also added empty alt tag to the placeholder image as a hint not to read it aloud.
π Thanks to Michelin for making much of this work possible via Apostrophe Enterprise Support.
- π The simplified
-
v2.96.2 Changes
September 17, 2019- π Bug fix: missing required fields nested in
array
orobject
fields hidden fviashowFields
no longer result in a server-side error. They adhere to the usual rule that if you can't see it, you're not expected to enter it. - π Bug fix: autocomplete now works again for tags and joins. This was caused by a difference of z-index introduced by an upgrade of jQuery UI in July.
- π Better UX for drag and drop.
- π The
findTestModule
method now works properly in Windows, opening the door to testing Apostrophe modules more easily on Windows. Thanks to Amin Shazrin for this contribution. - π
The base name of the master stylesheet has been factored out to a
getStylesheetsMasterBase
method inapostrophe-assets
, for easier overrides in multisite projects. - π¨ Thanks to refactoring of the implementation, it is now possible to override the behavior of the
apostrophe-email
module to use different transports in different circumstances. Thanks to AurΓ©lien Wolz for this contribution.
- π Bug fix: missing required fields nested in
-
v2.96.1 Changes
September 09, 2019- π Setting PORT to
0
, or passing0
as theport
option toapostrophe-express
, now works per the TCP documentation: you get a random port number. You can access that port number asapos.modules['apostrophe-express'].port
. Thanks to J. Garijo for this contribution. - βͺ The ability to add a new image while selecting one for a widget has been restored. Similar scenarios while editing other joins are also fixed.
- Double-clicking the "Edit" button of a widget no longer causes a race condition. Thanks to Mayank Bansal for pointing out the issue and how to reproduce it.
- Undisplayed tooltips no longer take up space in a way that causes interface frustration.
- π Setting PORT to
-
v2.96.0 Changes
September 04, 2019- π» Reverse joins no longer result in an empty tab when they are the only unarranged field, since they have no editing UI in any case.
- The "context menu" (aka "Page Settings," "Published," etc.) has been cleaned up in several ways. It no longer appears unless the user at least has edit access to either
data.page
ordata.piece
. This deciding factor can be altered by overridingapos.templates.showContextMenu
, which acceptsreq
and must returntrue
orfalse
. In addition, the "Unpublished" dropdown works properly in all cases. - Notifications now have an explicit "close" button to help those who did not realize they were clickable. Also, they display the proper cursor when hovered and use a suitable HTML tag for improved accessibility.
-
v2.95.1 Changes
September 01, 2019- β Drag and drop operations within an area, and various other operations, no longer result in a race condition where the same document is locked more than once and content can be lost. This is especially noticeable on slower connections but can happen anytime. This was a longstanding problem. Thanks to Eric Wong for his patient reporting and testing of this issue.
- β‘οΈ eslint has been updated, addressing npm audit complaints.
-
v2.95.0 Changes
August 21, 2019- Nested content in sub-areas is no longer lost when editing schema properties of the widget that contains the areas.
- π The
slugPrefix
option for pieces modules now works correctly. This option prefixes the slugs of all pieces of that type with the given string. It is recommended, but not required, that the prefix end in-
. The editor requires that the slug be prefixed with theslugPrefix
, the editor suggests slugs that include the prefix, and a migration now runs to add theslugPrefix
to pieces that lack the prefix. If this results in a slug conflict the offending piece is left alone and flagged for your manual attention. A slug without the prefix does not cause any harm, other than cluttering up the namespace of slugs. apostrophe-images
andapostrophe-files
now use theslugPrefix
option to prefix their slugs. This will result in a one-time migration for each at startup, after which your image and file slugs will no longer be in frequent conflict with other pieces when you try to give them friendly slugs. Note that image and file slugs are not used in actual media asset filenames, so there is no bc break there. And although most sites don't have anapostrophe-images-pages
orapostrophe-files-pages
module, those that do will experience no 404 errors due to Apostrophe's robust redirect features.- π Apostrophe migrations are now more stable in MongoDB Atlas and other environments in which it is unwise to keep a single MongoDB cursor alive for long periods. To achieve greater stability, the
apos.migrations.eachDoc
method now fetches the_id
properties of all relevant docs first, and they are then processed in small batches. - The
APOS_TRACE_DB=1
environment variable, which is useful for tracking down MongoDB issues, now includes traces fordistinct
calls. - π A division-by-zero error in the migration progress display was fixed, correcting some strange-looking output.
- π± In
apostrophe-assets
, the logic to determine the dev environment asset generation id was factored out to thedetermineDevGeneration
method to simplify overriding it inapostrophe-multisite
. apos.utils.post
andapos.utils.get
now report HTTP errors (status >= 400) properly to their callbacks. The object provided as the error includes astatus
property with the HTTP status code. The body is still available in the second argument to the callback.
-
v2.94.1 Changes
August 12, 2019- π Bug fix for a regression that impacted the ability to edit an array field again after cancelling the first time. Thanks to Amin Shazrin for this contribution.
-
v2.94.0 Changes
August 09, 2019- π Bug fix for the new simplified static asset bundling: URLs beginning with
/
in CSS files are correctly rewritten to point to the bundle in the cloud when using the simple bundle feature (APOS_BUNDLE=1
). This was already done for the old method. - π In the browser, the lean methods
apos.utils.post
andapos.utils.get
now accept non-JSON responses from APIs. To maximize bc, if the response has theapplication/json
content type, it is always parsed for you; if not, it is still parsed for you if it is valid JSON, but otherwise it is delivered to you as-is (as a string). - When you edit the slug of a piece or page manually and a slug conflict with another piece or page is created, you can now optionally click a button in order to edit the conflicting piece or page, and change its slug to eliminate the conflict.
- π Bug fix for the new simplified static asset bundling: URLs beginning with
-
v2.93.0 Changes
July 25, 2019- π New, simplified static asset bundling feature for deploying to cloud hosts like Heroku. See the ApostropheCMS Heroku HOWTO for details. There is more to successful Heroku deployment than just static assert bundling.
First, make sure the
APOS_BUNDLE=1
environment variable is set in your production environment, i.e. in your Heroku environment settings.π Next, set up a "release tasks" script:
-
v2.92.1 Changes
July 09, 2019β Unit tests passing.
β Regression tests passing.
- π Fixes for several bugs relating to tooltips persisting on the page longer than they should.
- π Fixes for three bugs relating to array fields: a
required
array field that is hidden byshowFields
is now correctly treated as not required (like other fields). Clicking "cancel" when editing an array now correctly reverts to the original contents of the array. And dynamic choice methods forselect
andcheckboxes
fields now work correctly when nested in anarray
orobject
field. - Nested areas can now be edited properly when found inside a dialog box, such as the "Edit" dialog box of a piece type.
- β¬οΈ Upgraded
diff
package to continue passingnpm audit
. - β¬οΈ Upgraded
jQuery
from version 3.3.1 to version 3.4.1, for those who have setjQuery: 3
as an option toapostrophe-assets
. This addresses a minor prototype pollution bug in jQuery. Please note that if you are not usingjQuery: 3
, you are still using jQuery 1.x. If you have jQuery code that will not work with 3.x, you should take the plunge and fix it, as there are no new fixes forthcoming for any issues with jQuery 1.x. You can also use the newlean: true
option to eliminate jQuery altogether when no user is logged in (in Apostrophe 3.x this will be the behavior all the time).