Skip to content

Commit

Permalink
Merge branch 'release-3.1.1' into leonardo/refactor-and-perf-phase-2
Browse files Browse the repository at this point in the history
  • Loading branch information
leonardoventurini committed Nov 26, 2024
2 parents e526c52 + 43d4ded commit c0e54cd
Show file tree
Hide file tree
Showing 54 changed files with 538 additions and 169 deletions.
12 changes: 7 additions & 5 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -76,8 +76,8 @@ run_save_node_bin: &run_save_node_bin
fi
# This environment is set to every job (and the initial build).
build_machine_environment: &build_machine_environment
# Specify that we want an actual machine (ala Circle 1.0), not a Docker image.
build_machine_environment:
&build_machine_environment # Specify that we want an actual machine (ala Circle 1.0), not a Docker image.
docker:
- image: meteor/circleci:2024.09.11-android-34-node-20
resource_class: large
Expand All @@ -104,8 +104,8 @@ build_machine_environment: &build_machine_environment

# These will be evaled before each command.
PRE_TEST_COMMANDS: |-
ulimit -c unlimited; # Set core dump size as Ubuntu 14.04 lacks prlimit.
ulimit -a # Display all ulimit settings for transparency.
ulimit -c unlimited; # Set core dump size as Ubuntu 14.04 lacks prlimit.
ulimit -a # Display all ulimit settings for transparency.
# This is only to make Meteor self-test not remind us that we can set
# this argument for self-tests.
Expand Down Expand Up @@ -765,7 +765,9 @@ jobs:
if [[ -n "$CIRCLE_PULL_REQUEST" ]]; then
PR_NUMBER=$(echo $CIRCLE_PULL_REQUEST | sed 's|.*/pull/\([0-9]*\)|\1|')
PR_BRANCH=$(curl -s https://api.github.com/repos/meteor/meteor/pulls/$PR_NUMBER | jq -r .head.ref)
git clone --branch $PR_BRANCH https://github.com/meteor/meteor.git ${CHECKOUT_METEOR_DOCS}
git clone https://github.com/meteor/meteor.git ${CHECKOUT_METEOR_DOCS}
cd ${CHECKOUT_METEOR_DOCS}
git fetch origin pull/$PR_NUMBER/head:$PR_BRANCH
else
git clone --branch $CIRCLE_BRANCH https://github.com/meteor/meteor.git ${CHECKOUT_METEOR_DOCS}
fi
Expand Down
40 changes: 40 additions & 0 deletions .envrc
Original file line number Diff line number Diff line change
Expand Up @@ -71,3 +71,43 @@ function @summarize-changes {

echo "$changes" | llm -s "Summarize the following changes in a few sentences:"
}

function @packages-bumped {
git diff --name-only devel...$(git branch --show-current) | grep "packages/.*/package.js$" | while IFS= read -r file; do
if ! git show devel:$file > /dev/null 2>&1; then
continue
fi

old=$(git show devel:$file | grep -o "version: *['\"][^'\"]*['\"]" | sed "s/version: *.['\"]//;s/['\"].*//")
version=$(grep -o "version: *['\"][^'\"]*['\"]" "$file" | sed "s/version: *.['\"]//;s/['\"].*//")
name=$(grep -o "name: *['\"][^'\"]*['\"]" "$file" | sed "s/name: *.['\"]//;s/['\"].*//")

pkg_name=$(echo "$file" | sed -E 's|packages/([^/]*/)?([^/]*)/package\.js|\2|')

version_in_red=$(tput setaf 1)$version$(tput sgr0)

if [[ "$version" != "$old" ]]; then
echo "- $pkg_name@$version_in_red"
fi
done
}

function @packages-bumped-npm {
git diff --name-only devel...$(git branch --show-current) | grep "npm-packages/.*/package.json$" | while IFS= read -r file; do
if ! git show devel:$file > /dev/null 2>&1; then
continue
fi

old=$(git show devel:$file | grep -o "version: *['\"][^'\"]*['\"]" | sed "s/version: *.['\"]//;s/['\"].*//")
version=$(grep -o "\"version\": *['\"][^'\"]*['\"]" "$file" | sed "s/\"version\": *.['\"]//;s/['\"].*//")
name=$(grep -o "\"name\": *['\"][^'\"]*['\"]" "$file" | sed "s/\"name\": *.['\"]//;s/['\"].*//")

pkg_name=$(echo "$file" | sed -E 's|npm-packages/([^/]*/)?([^/]*)/package\.json|\2|')

version_in_red=$(tput setaf 1)$version$(tput sgr0)

if [[ "$version" != "$old" ]]; then
echo "- $pkg_name@$version_in_red"
fi
done
}
2 changes: 1 addition & 1 deletion meteor
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash

BUNDLE_VERSION=22.11.0.2
BUNDLE_VERSION=22.11.0.4


# OS Check. Put here because here is where we download the precompiled
Expand Down
2 changes: 1 addition & 1 deletion npm-packages/meteor-installer/config.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
const os = require('os');
const path = require('path');

const METEOR_LATEST_VERSION = '3.1-beta.0';
const METEOR_LATEST_VERSION = '3.1';
const sudoUser = process.env.SUDO_USER || '';
function isRoot() {
return process.getuid && process.getuid() === 0;
Expand Down
4 changes: 2 additions & 2 deletions npm-packages/meteor-installer/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion npm-packages/meteor-installer/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "meteor",
"version": "3.1.0-beta.1",
"version": "3.1.0",
"description": "Install Meteor",
"main": "install.js",
"scripts": {
Expand Down
98 changes: 49 additions & 49 deletions packages/accounts-password/package.js
Original file line number Diff line number Diff line change
@@ -1,49 +1,49 @@
Package.describe({
summary: "Password support for accounts",
// Note: 2.2.0-beta.3 was published during the Meteor 1.6 prerelease
// process, so it might be best to skip to 2.3.x instead of reusing
// 2.2.x in the future. The version was also bumped to 2.0.0 temporarily
// during the Meteor 1.5.1 release process, so versions 2.0.0-beta.2
// through -beta.5 and -rc.0 have already been published.
version: "3.0.2",
});

Npm.depends({
bcrypt: "5.0.1",
});

Package.onUse((api) => {
api.use(["accounts-base", "sha", "ejson", "ddp"], ["client", "server"]);

// Export Accounts (etc) to packages using this one.
api.imply("accounts-base", ["client", "server"]);

api.use("email", "server");
api.use("random", "server");
api.use("check", "server");
api.use("ecmascript");

api.addFiles("email_templates.js", "server");
api.addFiles("password_server.js", "server");
api.addFiles("password_client.js", "client");
});

Package.onTest((api) => {
api.use([
"accounts-password",
"sha",
"tinytest",
"test-helpers",
"tracker",
"accounts-base",
"random",
"email",
"check",
"ddp",
"ecmascript",
]);
api.addFiles("password_tests_setup.js", "server");
api.addFiles("password_tests.js", ["client", "server"]);
api.addFiles("email_tests_setup.js", "server");
api.addFiles("email_tests.js", "client");
});
Package.describe({
summary: "Password support for accounts",
// Note: 2.2.0-beta.3 was published during the Meteor 1.6 prerelease
// process, so it might be best to skip to 2.3.x instead of reusing
// 2.2.x in the future. The version was also bumped to 2.0.0 temporarily
// during the Meteor 1.5.1 release process, so versions 2.0.0-beta.2
// through -beta.5 and -rc.0 have already been published.
version: "3.0.3",
});

Npm.depends({
bcrypt: "5.0.1",
});

Package.onUse((api) => {
api.use(["accounts-base", "sha", "ejson", "ddp"], ["client", "server"]);

// Export Accounts (etc) to packages using this one.
api.imply("accounts-base", ["client", "server"]);

api.use("email", "server");
api.use("random", "server");
api.use("check", "server");
api.use("ecmascript");

api.addFiles("email_templates.js", "server");
api.addFiles("password_server.js", "server");
api.addFiles("password_client.js", "client");
});

Package.onTest((api) => {
api.use([
"accounts-password",
"sha",
"tinytest",
"test-helpers",
"tracker",
"accounts-base",
"random",
"email",
"check",
"ddp",
"ecmascript",
]);
api.addFiles("password_tests_setup.js", "server");
api.addFiles("password_tests.js", ["client", "server"]);
api.addFiles("email_tests_setup.js", "server");
api.addFiles("email_tests.js", "client");
});
2 changes: 1 addition & 1 deletion packages/babel-compiler/package.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Package.describe({
name: "babel-compiler",
summary: "Parser/transpiler for ECMAScript 2015+ syntax",
version: '7.11.2-beta310.0',
version: '7.11.2',
});

Npm.depends({
Expand Down
2 changes: 1 addition & 1 deletion packages/boilerplate-generator-tests/package.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Package.describe({
// These tests are in a separate package so that we can Npm.depend on
// parse5, a html parsing library.
summary: "Tests for the boilerplate-generator package",
version: '1.5.3-beta310.0',
version: '1.5.3',
documentation: null
});

Expand Down
2 changes: 1 addition & 1 deletion packages/ddp-client/package.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package.describe({
summary: "Meteor's latency-compensated distributed data client",
version: "3.0.3-beta310.0",
version: "3.0.3",
documentation: null,
});

Expand Down
18 changes: 9 additions & 9 deletions packages/ddp-server/livedata_server.js
Original file line number Diff line number Diff line change
Expand Up @@ -1351,33 +1351,33 @@ Object.assign(Server.prototype, {
},

/**
* @summary Set publication strategy for the given publication. Publications strategies are available from `DDPServer.publicationStrategies`. You call this method from `Meteor.server`, like `Meteor.server.setPublicationStrategy()`
* @summary Set publication strategy for the given collection. Publications strategies are available from `DDPServer.publicationStrategies`. You call this method from `Meteor.server`, like `Meteor.server.setPublicationStrategy()`
* @locus Server
* @alias setPublicationStrategy
* @param publicationName {String}
* @param collectionName {String}
* @param strategy {{useCollectionView: boolean, doAccountingForCollection: boolean}}
* @memberOf Meteor.server
* @importFromPackage meteor
*/
setPublicationStrategy(publicationName, strategy) {
setPublicationStrategy(collectionName, strategy) {
if (!Object.values(publicationStrategies).includes(strategy)) {
throw new Error(`Invalid merge strategy: ${strategy}
for collection ${publicationName}`);
for collection ${collectionName}`);
}
this._publicationStrategies[publicationName] = strategy;
this._publicationStrategies[collectionName] = strategy;
},

/**
* @summary Gets the publication strategy for the requested publication. You call this method from `Meteor.server`, like `Meteor.server.getPublicationStrategy()`
* @summary Gets the publication strategy for the requested collection. You call this method from `Meteor.server`, like `Meteor.server.getPublicationStrategy()`
* @locus Server
* @alias getPublicationStrategy
* @param publicationName {String}
* @param collectionName {String}
* @memberOf Meteor.server
* @importFromPackage meteor
* @return {{useCollectionView: boolean, doAccountingForCollection: boolean}}
*/
getPublicationStrategy(publicationName) {
return this._publicationStrategies[publicationName]
getPublicationStrategy(collectionName) {
return this._publicationStrategies[collectionName]
|| this.options.defaultPublicationStrategy;
},

Expand Down
2 changes: 1 addition & 1 deletion packages/ddp-server/package.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package.describe({
summary: "Meteor's latency-compensated distributed data server",
version: "3.0.3-beta310.0",
version: "3.0.3",
documentation: null,
});

Expand Down
2 changes: 1 addition & 1 deletion packages/ecmascript/package.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package.describe({
name: 'ecmascript',
version: '0.16.10-beta310.1',
version: '0.16.10',
summary: 'Compiler plugin that supports ES2015+ in all .js files',
documentation: 'README.md',
});
Expand Down
2 changes: 1 addition & 1 deletion packages/email/package.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package.describe({
summary: "Send email messages",
version: "3.1.1-beta310.0",
version: "3.1.1",
});

Npm.depends({
Expand Down
4 changes: 2 additions & 2 deletions packages/meteor-tool/package.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package.describe({
summary: 'The Meteor command-line tool',
version: '3.1.0-beta310.0',
summary: "The Meteor command-line tool",
version: "3.1.0",
});

Package.includeTool();
2 changes: 1 addition & 1 deletion packages/meteor/package.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Package.describe({
summary: "Core Meteor environment",
version: '2.0.2-beta310.0',
version: '2.0.2',
});

Package.registerBuildPlugin({
Expand Down
2 changes: 1 addition & 1 deletion packages/minifier-js/package.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package.describe({
summary: "JavaScript minifier",
version: '3.0.1-beta310.0',
version: '3.0.1',
});

Npm.depends({
Expand Down
2 changes: 1 addition & 1 deletion packages/minimongo/package.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package.describe({
summary: "Meteor's client-side datastore: a port of MongoDB to Javascript",
version: "2.0.2-beta310.0",
version: "2.0.2",
});

Package.onUse((api) => {
Expand Down
2 changes: 1 addition & 1 deletion packages/modules/package.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package.describe({
name: "modules",
version: '0.20.3-beta310.0',
version: '0.20.3',
summary: "CommonJS module system",
documentation: "README.md"
});
Expand Down
2 changes: 1 addition & 1 deletion packages/mongo/package.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

Package.describe({
summary: "Adaptor for using MongoDB and Minimongo over DDP",
version: "2.0.3-beta310.0",
version: "2.0.3",
});

Npm.depends({
Expand Down
2 changes: 1 addition & 1 deletion packages/non-core/coffeescript-compiler/package.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Package.describe({
summary: 'Compiler for CoffeeScript code, supporting the coffeescript package',
// This version of NPM `coffeescript` module, with _1, _2 etc.
// If you change this, make sure to also update ../coffeescript/package.js to match.
version: '2.4.2-beta310.0'
version: '2.4.2'
});

Npm.depends({
Expand Down
2 changes: 1 addition & 1 deletion packages/non-core/coffeescript/package.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Package.describe({
// so bumping the version of this package will be how they get newer versions
// of `coffeescript-compiler`. If you change this, make sure to also update
// ../coffeescript-compiler/package.js to match.
version: '2.7.2-beta310.0'
version: '2.7.2'
});

Package.registerBuildPlugin({
Expand Down
Loading

0 comments on commit c0e54cd

Please sign in to comment.