How to update all indirect dependencies after fresh project creation - meteor

So, ever since meteor unpinned package versions to the releases I've been experiencing this problem.
when I run $ meteor create [project], cd into that project and then check it with $ meteor update
I get the following:
$ meteor update
This project is already at Meteor 1.4.0.1, the latest release.
Your top-level dependencies are at their latest compatible versions.
Newer versions of the following indirect dependencies are available:
* autoupdate 1.2.11 (1.3.11 is available)
* caching-compiler 1.0.6 (1.1.6 is available)
* ddp-client 1.2.9 (1.3.0 is available)
* ddp-server 1.2.10 (1.3.9 is available)
* http 1.1.8 (1.2.8 is available)
* templating 1.1.14 (1.2.13 is available)
To update one or more of these packages, pass their names to `meteor
update`.
Which means then the next command is inevitably:
$ meteor update autoupdate caching-compiler ddp-client ddp-server http templating
Changes to your project's package version selections from updating package
versions:
autoupdate upgraded from 1.2.11 to 1.3.11
caching-compiler upgraded from 1.0.6 to 1.1.6
ddp-client upgraded from 1.2.9 to 1.3.0
ddp-server upgraded from 1.2.10 to 1.3.9
http upgraded from 1.1.8 to 1.2.8
templating upgraded from 1.1.14 to 1.2.13
And this is frankly annoying.
When I create a new project - I want everything to be the latest and greatest - new. Now, I understand sometimes some people don't want that and I'm okay with that. But for people like me, it sure would be nice to have a command meteor update everything - papa want's a brand new car!
Is anyone aware of such a command? The documentation doesn't seam to have this command listed.
Edit:
Note, that this also doesn't work:
$ meteor update --packages-only
Your top-level dependencies are at their latest compatible versions.
Newer versions of the following indirect dependencies are available:
* autoupdate 1.2.11 (1.3.11 is available)
* caching-compiler 1.0.6 (1.1.6 is available)
* ddp-client 1.2.9 (1.3.0 is available)
* ddp-server 1.2.10 (1.3.9 is available)
* http 1.1.8 (1.2.8 is available)
* templating 1.1.14 (1.2.13 is available)
To update one or more of these packages, pass their names to `meteor
update`.

Related

Meteor Atmosphere/Core Package Dependency Resolution Override (jquery, iron-router, blaze)

I have a meteor application with the following packages:
$ meteor list
accounts-password 1.5.3 Password support for accounts
accounts-ui 1.3.1 Simple templates to add login widget...
blaze-html-templates 1.1.2 Compile HTML templates into reactive...
ecmascript 0.14.2 Compiler plugin that supports ES201...
es5-shim 4.8.0 Shims and polyfills to improve ECMAS...
fourseven:scss 4.12.0 Style with attitude. Sass and SCSS ...
iron:router 1.1.2 Routing specifically designed for Me...
jquery 1.11.11* Manipulate the DOM using CSS selec...
meteor-base 1.4.0 Packages that every Meteor app needs
mobile-experience 1.0.5 Packages for a great mobile user exp...
mongo 1.8.1 Adaptor for using MongoDB and Minimo...
reactive-var 1.0.11 Reactive variable
shell-server 0.4.0 Server-side component of the `meteor...
standard-minifier-css 1.6.0 Standard css minifier used with Mete...
standard-minifier-js 2.6.0 Standard javascript minifiers used w...
tracker 1.2.0 Dependency tracker to allow reactive...
typescript 3.7.5 Compiler plugin that compiles TypeSc...
* New versions of these packages are available! Run 'meteor update'
to try to update those packages to their latest versions. If your
packages cannot be updated further, try typing
`meteor add <package>#<newVersion>` to see more information.
The atmosphere package jquery is available with version 3.0.0. I had that until installing iron-router. I was able to successfully get iron-router installed by following this advice: https://forums.meteor.com/t/iron-router-jquery-dependency/51374 (specifically meteor add iron:router --allow-incompatible-update).
I'd like to use the newer 3.0.0. I don't get the impression there is any true incompatibility within iron-router.
However, if I try to add it, I get:
$ meteor add jquery#3.0.0
-error: Conflict: Constraint jquery#1.0.0 is not satisfied by jquery
3.0.0.
Constraints on package "jquery":
* jquery#3.0.0 <- top level
* jquery#1.11.9 || 3.0.0 <- blaze 2.3.4 <- accounts-base 1.5.0 <-
accounts-password 1.5.3
* jquery#1.11.9 || 3.0.0 <- blaze 2.3.4 <- blaze-html-templates
1.1.2
* jquery#1.0.0 <- iron:dynamic-template 1.0.12 <- iron:controller
1.0.12 <- iron:router 1.1.2
* jquery#1.0.0 <- iron:location 1.0.11 <- iron:router 1.1.2
Initially, I had a hard time seeing where it was getting 1.0.0 from for the iron:* dependencies since there was no explicit version listed:
https://github.com/iron-meteor/iron-dynamic-template/blob/devel/package.js#L14
https://github.com/iron-meteor/iron-location/blob/master/package.js#L13
Then I found this in the documentation for api.versionsFrom(meteorRelease):
Use versions of core packages from a release. Unless provided, all packages will default to the versions released along with meteorRelease. This will save you from having to figure out the exact versions of the core packages you want to use. For example, if the newest release of meteor is `METEOR#0.9.0 and it includes jquery#1.0.0, you can write api.versionsFrom('METEOR#0.9.0') in your package, and when you later write api.use('jquery'), it will be equivalent to api.use('jquery#1.0.0').
So that seems to be what is happening -- jquery#1.0.0 was tied to METEOR#0.9.2.
So... aside from the option of checking out the iron-* packages into my local project as custom packages to override the api.versionsFrom(meteorRelease) in a custom fork to a modern release (or rather specify a specific jquery version since I believe it is no longer a core package)... is there any way forcefully update to jquery#3.0.0 despite what it thinks is a conflict?
Unfortunately --allow-incompatible-update does not seem to work in this instance.
This a bit of opinionated but if you want to have a router without dependencies to outdated packages you should go with ostrio:flow-router-extra which allows you even to omit jQuery or install jQuery using the npm package.
Since Meteor 1.8.3 there is also no hard dependency between Blaze and jQuery, allowing to install the latest jQuery from npm registry, which is important from a security perspective.
Check out:
https://github.com/VeliovGroup/flow-router
https://github.com/meteor/meteor/blob/devel/History.md
Use #= to install a specific pkg version. You'll need to remove the npm jquery pkg if you downgrade.
meteor add jquery#=1.11.11
meteor npm remove jquery
meteor add iron:router

Cloudfoundry buildpack .net version error

When I deploy my .net core 2.1.0 project, I get the following error:
-----> Installing dotnet-framework 2.0.3
**ERROR** DEPENDENCY MISSING IN MANIFEST:
Version 2.0.3 of dependency dotnet-framework is not supported by this buildpack.
The versions of dotnet-framework supported in this buildpack are:
- 1.0.5
- 1.0.10
- 1.0.11
- 1.1.2
- 1.1.7
- 1.1.8
- 2.0.0
- 2.0.7
- 2.1.0
All solutions in my project is targeting the .net core framework 2.1.0, so I don't understand why this is.
I have dependencies in my project, and some of the them, like NETStandard.Library and Microsoft.NETCore.DotNetAppHost, are version 2.0.3, but does that really matter? (Also I don't think a version higher than 2.0.3 exist of NetStandard.Library.)
The project runs fine on my local machine, and ran fine on the host before we upgraded the buildpack and target .net framework, as well as various dependencies through NuGet.
Here is the full log:
https://1drv.ms/t/s!Ar81AKlFywcPhapTJdjZEnrcGrZS4A
You can try to pin the RuntimeFrameworkVersion to a specific one:
<RuntimeFrameworkVersion>2.0.7</RuntimeFrameworkVersion>

Error while upgrading from 1.4.4.2 to 1.4.4.3 or higher

I faced below error when I ran below commands;
meteor update --patch
ran command meteor
ERROR
D:\test>meteor update --patch
Changes to your project's package version selections from updating the
release:
accounts-base upgraded from 1.2.17 to 1.3.0
babel-compiler upgraded from 6.18.2 to 6.19.1
boilerplate-generator upgraded from 1.0.11 to 1.1.0
dynamic-import added, version 0.1.0
ecmascript upgraded from 0.7.3 to 0.8.0
ecmascript-runtime upgraded from 0.3.15 to 0.4.1
ecmascript-runtime-client added, version 0.4.1
ecmascript-runtime-server added, version 0.4.1
localstorage upgraded from 1.0.12 to 1.1.0
meteor-base upgraded from 1.0.4 to 1.1.0
minifier-js upgraded from 2.0.0 to 2.1.0
minimongo upgraded from 1.0.23 to 1.2.0
modules upgraded from 0.8.2 to 0.9.0
modules-runtime upgraded from 0.7.10 to 0.8.0
mongo upgraded from 1.1.17 to 1.1.18
promise upgraded from 0.8.8 to 0.8.9
reactive-dict upgraded from 1.1.8 to 1.1.9
standard-minifier-js upgraded from 2.0.0 to 2.1.0
webapp upgraded from 1.3.15 to 1.3.16
test: updated to Meteor 1.4.4.3.
D:\test>meteor
[[[[[ ~\D\test ]]]]]
=> Started proxy.
=> Meteor 1.5 is available. Update this project with 'meteor update'.
=> Started MongoDB.
=> Errors prevented startup:
While selecting package versions:
error: Potentially incompatible change required to top-level
dependency: meteor-base 1.0.4, was 1.1.0.
Constraints on package "meteor-base":
* meteor-base#1.0.4 <- top level
* meteor-base#1.0.4 <- top level
Potentially incompatible change required to top-level dependency:
dynamic-import 0.1.0-beta.20, was 0.1.0.
Constraints on package "dynamic-import":
To allow potentially incompatible changes to top-level dependencies,
you must pass --allow-incompatible-update on the command line.
=> Your application has errors. Waiting for file change.
if you update to meteor 1.5 with meteor update Everything will work as expected with 0 conflict.
Dont touch any files!
Worked for me, first update that actually does not break anything.
I have noticed that the update included package "dynamic-import".
Just taking it out solved the issue. Then run with:
meteor --allow-incompatible-update
Maybe it is just a coincidence I have made this patch just a bit after the new Meteor 1.5 is launched. I wonder if this package should not be in this release.

Cannot remove email using Accounts Package in Meteor

When trying to use one of the basic Accounts methods listed below on the server-side, I always get an error of the following type:
TypeError: Object # has no method 'removeEmail'
Server Methods:
Accounts.addEmail()
Accounts.removeEmail()
Accounts.findUserByUsername()
Accounts.findUserByEmail()
I have tried from inside the app and from the REPL shell.
Accounts-related packages I use:
meteor-platform
accounts-password
accounts-facebook
pauli:accounts-linkedin
accounts-twitter
splendido:accounts-emails-field
accounts-base
alanning:roles
You are probably running a Meteor version prior to Meteor 1.2. I think all of the functions you mention were added in 1.2. To check your meteor version, run:
meteor --version
If that isn't the problem, please provide the exact code that is causing the error you mentioned.
FYI, the following shows that those methods exist in my Meteor 1.2 installation with the packages you mentioned:
[brettle#localhost test-app]$ meteor --version
Meteor 1.2.0.2
[brettle#localhost tmp]$ meteor create test-app
Created a new Meteor app in 'test-app'.
To run your new app:
cd test-app
meteor
If you are new to Meteor, try some of the learning resources here:
https://www.meteor.com/learn
[brettle#localhost tmp]$ cd test-app
#### Note "meteor add accounts-password" also works instead of this next line:
[brettle#localhost test-app]$ meteor add accounts-password accounts-facebook pauli:accounts-linkedin accounts-twitter splendido:accounts-emails-field accounts-base alanning:roles
Changes to your project's package version selections:
accounts-base added, version 1.2.1
accounts-facebook added, version 1.0.6
accounts-oauth added, version 1.1.7
accounts-password added, version 1.1.3
accounts-twitter added, version 1.0.6
alanning:roles added, version 1.2.14
ddp-rate-limiter added, version 1.0.0
email added, version 1.0.7
facebook added, version 1.2.2
localstorage added, version 1.0.5
npm-bcrypt added, version 0.7.8_2
oauth added, version 1.1.6
oauth1 added, version 1.1.5
oauth2 added, version 1.1.5
pauli:accounts-linkedin added, version 1.1.2
pauli:linkedin added, version 1.1.2
rate-limit added, version 1.0.0
service-configuration added, version 1.0.5
sha added, version 1.0.4
splendido:accounts-emails-field added, version 1.2.0
srp added, version 1.0.4
twitter added, version 1.1.5
accounts-password: Password support for accounts
accounts-facebook: Login service for Facebook accounts
pauli:accounts-linkedin: Accounts service for LinkedIn accounts
accounts-twitter: Login service for Twitter accounts
splendido:accounts-emails-field: Adds to the user obj a `registered_emails`
field containing 3rd-party account service emails.
accounts-base: A user account system
alanning:roles: Authorization package for Meteor
[brettle#localhost test-app]$ meteor &
[1] 21185
[[[[[ ~/tmp/test-app ]]]]]
=> Started proxy.
=> Started MongoDB.
=> Started your app.
=> App running at: http://localhost:3000/
I20151007-23:49:34.554(-7)? ** You've set up some data subscriptions with Meteor.publish(), but
I20151007-23:49:34.555(-7)? ** you still have autopublish turned on. Because autopublish is still
I20151007-23:49:34.555(-7)? ** on, your Meteor.publish() calls won't have much effect. All data
I20151007-23:49:34.555(-7)? ** will still be sent to all clients.
I20151007-23:49:34.555(-7)? **
I20151007-23:49:34.556(-7)? ** Turn off autopublish by removing the autopublish package:
I20151007-23:49:34.556(-7)? **
I20151007-23:49:34.556(-7)? ** $ meteor remove autopublish
I20151007-23:49:34.556(-7)? **
I20151007-23:49:34.556(-7)? ** .. and make sure you have Meteor.publish() and Meteor.subscribe() calls
I20151007-23:49:34.556(-7)? ** for each collection that you want clients to see.
I20151007-23:49:34.556(-7)?
[brettle#localhost test-app]$ meteor shell
Welcome to the server-side interactive shell!
Tab completion is enabled for global variables.
Type .reload to restart the server and the shell.
Type .exit to disconnect from the server and leave the shell.
Type .help for additional help.
> Accounts.removeEmail
[Function]
> Accounts.addEmail
[Function]
> Accounts.findUserByUsername
[Function]
> Accounts.findUserByEmail
[Function]

Package Problems upgrading to Meteor 1.2, cannot start server now

I just upgraded to Meteor 1.2 from 1.1.
It did not upgrade and this is what it output
MacBook-Pro:ProjectX Nearpoint$ meteor update
Update to release METEOR#1.2.0.1 is impossible:
While selecting package versions:
error: Conflict: Constraint less#1.0.11 is not satisfied by less 2.5.0_2.
Constraints on package "less":
* less#=2.5.0_2 <- top level
* less#1.0.11 <- multiply:iron-router-progress 1.0.1
* less#1.0.0||2.0.0 <- matteodem:easy-search 1.6.3
* less#1.0.0||2.0.0 <- mdg:camera 1.1.5
This project is at the latest release which is compatible with your current package constraints.
npm-container: updating npm dependencies -- beagle, validator, async...
Changes to your project's package version selections from updating package versions:
cfs:http-methods upgraded from 0.0.29 to 0.0.30
ian:accounts-ui-bootstrap-3 upgraded from 1.2.79 to 1.2.80
matteodem:easy-search upgraded from 1.6.3 to 1.6.4
meteorhacks:kadira upgraded from 2.23.2 to 2.23.4
The following top-level dependencies were not updated to the very latest version available:
* kevohagan:sweetalert 0.5.0 (1.0.0 is available)
* mdg:camera 1.1.5 (1.2.0 is available)
* natestrauser:filepicker-plus 1.2.3 (2.0.0 is available)
* natestrauser:select2 3.5.1 (4.0.0_1 is available)
* zimme:iron-router-active 1.0.4 (2.0.1 is available)
Newer versions of the following indirect dependencies are available:
* babrahams:editable-json 0.4.3 (0.6.0 is available)
* matb33:collection-hooks 0.7.15 (0.8.0 is available)
* meteorhacks:aggregate 1.2.1 (1.3.0 is available)
* meteortoys:hotreload 0.2.0 (0.3.0 is available)
* meteortoys:listen 0.3.0 (0.4.0 is available)
* meteortoys:pub 0.3.1 (0.4.0 is available)
* meteortoys:status 0.1.0 (0.2.0 is available)
* meteortoys:toypro 0.4.2 (0.5.0 is available)
* softwarerero:accounts-t9n 1.0.9 (1.1.4 is available)
* tap:i18n 1.5.1 (1.6.1 is available)
* underscorestring:underscore.string 3.0.3_1 (3.2.2 is available)
To update one or more of these packages, pass their names to `meteor update`.
What should I do to fix this now? I currently cannot start my server after upgrading.
I am getting the error
=> Started proxy.
=> Started MongoDB.
=> Errors prevented startup:
While selecting package versions:
error: Potentially incompatible change required to top-level dependency: matteodem:easy-search 1.6.3,
was 1.6.4.
Constraints on package "matteodem:easy-search":
To allow potentially incompatible changes to top-level dependencies, you must pass
--allow-incompatible-update on the command line.
=> Your application has errors. Waiting for file change.

Resources