escala 2+3: Meteor 1.8.3 -> 2.3 (Mongo 3.2 compatible), dead-package remediation
Reaches Meteor 2.3 building + running against Mongo 3.2, REST smoke test
byte-identical to the 1.6.1.1 baseline (all 12 Flutter endpoints green).
Dead/abandoned Atmosphere packages removed or replaced (the upgrade blockers):
- arkham:comments-ui (no Meteor 2.x build; pinned accounts-password@1.x):
reimplemented the fire-page comments as a React feature:
imports/api/Comments/ (collection, server methods, publication, media
analyzers, new-fire-comment email) + imports/ui/components/Comments/CommentsBox.
Comment text now rendered as safe plain text + image/youtube embed (was
markdown-to-HTML). Wired into Fires.js; sitemaps.js + migration v11 updated
to the new collection. Old Blaze/startup comments files deleted.
- nimble:restivus (REST API; pinned accounts-password@1.3.3, CoffeeScript source
that crashes this build host): vendored as a local package
packages/nimble-restivus with the .coffee precompiled to plain JS and the
accounts-password constraint loosened to 2.x. REST behavior unchanged
(verified by smoke test). This also dropped the entire iron:router stack.
- maximum:server-transform (+ peerlibrary:*, meteorhacks:zones/inject-initial):
unused; removal broke Meteor.publishTransformed in FalsePositives publications
-> replaced with plain Meteor.publish (no transform was configured).
- less, markdown (no source files), and the dead test stack
(meteortesting:mocha, practicalmeteor:chai, xolvio:cleaner) which transitively
pulled coffeescript@1.0.17 — the build plugin that crashed meteor-tool
(node_contextify assertion) on this machine. Removing it unblocked the build.
- fourseven:scss 4.5.4 -> 4.14.1 (node-sass 4.5.3 doesn't build on node 12).
npm-mongo driver at 2.3 is 3.9.x — still compatible with the production Mongo
3.2 replica set.
This commit is contained in:
parent
ccfc80547a
commit
cd570b9d9c
24 changed files with 1638 additions and 312 deletions
29
imports/api/Comments/Comments.js
Normal file
29
imports/api/Comments/Comments.js
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
/* eslint-disable import/no-absolute-path */
|
||||
import { Mongo } from 'meteor/mongo';
|
||||
|
||||
/*
|
||||
* Comments collection (fire-page comments).
|
||||
*
|
||||
* Replaces the abandoned `arkham:comments-ui` Atmosphere package (no Meteor 2.x
|
||||
* build) with a small React + methods implementation. The collection name
|
||||
* ('comments') and the core document shape are kept so existing production
|
||||
* documents keep rendering:
|
||||
*
|
||||
* { referenceId: 'fire-<id>', content, userId, username,
|
||||
* media: { type, content }, likes: [userId], dislikes: [userId],
|
||||
* status: 'approved', createdAt, updatedAt }
|
||||
*
|
||||
* Legacy documents may also carry replies[]/starRatings[]/ratingScore/
|
||||
* isAnonymous — those features were disabled in this app's config and are
|
||||
* ignored by the new UI.
|
||||
*/
|
||||
const Comments = new Mongo.Collection('comments');
|
||||
|
||||
// Writes only through the vetted server methods.
|
||||
Comments.deny({
|
||||
insert: () => true,
|
||||
update: () => true,
|
||||
remove: () => true
|
||||
});
|
||||
|
||||
export default Comments;
|
||||
Loading…
Add table
Add a link
Reference in a new issue