I am trying to update my meteor project from 1.8.2 to the latest version. To do this, I have run meteor update outside of a meteor project and got this message:
The latest version of Meteor, 2.3.6, is already installed on this computer. Run 'meteor update' inside of a particular project directory to update that project to Meteor 2.3.6
After that, I go into my project directory and run the same meteor update and receive this message:
=> Errors while initializing project:
While selecting package versions:
error: No version of standard-minifier-js satisfies all constraints: #2.6.1, #=2.5.0, #~2.6.1
Constraints on package "standard-minifier-js":
* standard-minifier-js#2.6.1 <- top level
* standard-minifier-js#=2.5.0 <- top level
* standard-minifier-js#~2.6.1 <- top level
No version of babel-compiler satisfies all constraints: #=7.4.0, #~7.7.0
Constraints on package "babel-compiler":
* babel-compiler#=7.4.0 <- top level
* babel-compiler#~7.7.0 <- top level
* babel-compiler#7.7.0 <- ecmascript 0.15.3 <- 416serg:simple-text-rotator 0.0.1
I'm not too clear on what the above error message means so if someone could explain that would be amazing. Even better if you've got any tips or ideas to solve this. Please let me know if you need any additional information!
As requested in comment, .meteor/packages:
# Meteor packages used by this project, one per line.
# Check this file (and the other files in this directory) into your repository.
#
# 'meteor add' and 'meteor remove' will edit this file for you,
# but you can also edit it by hand.
# autopublish
# insecure
accounts-ui#1.3.1
accounts-password#1.5.1
# documentation for iron router talks about a higher version.
# but, example todos and others use 0.9.4 which uses routes without a slash(/),
# and actual url is specified on path property.
iron:router#=0.9.4
jquery
underscore#1.0.10
email#1.2.3
alanning:roles
meteor-base#1.4.0
mobile-experience#1.0.5
mongo#1.7.0
blaze-html-templates
session#1.2.0
tracker#1.2.0
logging#1.1.20
reload#1.3.0
random#1.1.0
ejson#1.1.0
spacebars
check#1.3.1
matb33:collection-hooks
# for stripe mrgalaxy:stripe
mrgalaxy:stripe
momentjs:moment
themeteorchef:jquery-validation
http#1.4.2
# for theme
less
twbs:bootstrap#3.3.5
fortawesome:fontawesome
reactive-var#1.0.11
summernote:summernote
dsyko:meteor-node-csv
#force-ssl
peppelg:bootstrap-3-modal
416serg:simple-text-rotator
risul:bootstrap-colorpicker
tomi:upload-jquery
dangrossman:bootstrap-daterangepicker
hellotech:moment-timezone
agnito:simptip
#abhiaiyer:meteor-twilio
jercle:livestamp
#msavin:mongol
tmeasday:publish-counts
kadira:blaze-layout
standard-minifier-css#1.5.4
standard-minifier-js#2.6.1
shell-server#0.4.0
dynamic-import#0.5.1
tomi:upload-server#1.3.4_3
tsega:mentions
montiapm:agent
mizzao:autocomplete
huaming:js-xlsx
edgee:slingshot
mizzao:user-status
I also have a file .meteor/packages~ (not sure what this is or if it's relevant):
# Meteor packages used by this project, one per line.
# Check this file (and the other files in this directory) into your repository.
#
# 'meteor add' and 'meteor remove' will edit this file for you,
# but you can also edit it by hand.
# autopublish
# insecure
accounts-ui
accounts-password
# documentation for iron router talks about a higher version.
# but, example todos and others use 0.9.4 which uses routes without a slash(/),
# and actual url is specified on path property.
iron:router#=0.9.4
jquery
underscore
email
alanning:roles
standard-minifiers
meteor-base
mobile-experience
mongo
blaze-html-templates
session
tracker
logging
reload
random
ejson
spacebars
check
# for stripe mrgalaxy:stripe
mrgalaxy:stripe
momentjs:moment
themeteorchef:jquery-validation
http
# for theme
less
twbs:bootstrap#3.3.5
fortawesome:fontawesome
reactive-var
summernote:summernote
dsyko:meteor-node-csv
#force-ssl
peppelg:bootstrap-3-modal
416serg:simple-text-rotator
risul:bootstrap-colorpicker
tomi:upload-server
tomi:upload-jquery
dangrossman:bootstrap-daterangepicker
It seems that you have all of these in your top-level, i.e., .meteor/packages:
babel-compiler#=7.4.0
babel-compiler#~7.7.0
standard-minifier-js#2.6.1
standard-minifier-js#=2.5.0
standard-minifier-js#~2.6.1
which express version constraints on the named packages. There are no versions for these two packages that satisfy all given constraints. But it seems pretty safe to say that you can reduce this to:
babel-compiler#~7.7.0
standard-minifier-js#2.6.1
but if
babel-compiler#~7.7.0
standard-minifier-js#~2.6.1
works, that would probably save you some trouble down the road, so I would try that first.
If you want to learn more about these constraint expressions, they are Semantic Versioning constraints, i.e., the same as used by npm: https://docs.npmjs.com/cli/v7/configuring-npm/package-json#dependencies.
Related
New to meteor. Just cloned a git repo, and upon launching the app, I get a router.js:347 There is no route for the path: / error.
This is my route for root in imports/startup/client/routes.js
FlowRouter.route('/', {
name: 'Home',
action() {
BlazeLayout.render('app_body', {tabs: 'tabs', inbox: 'inbox', upload: 'upload', invite: 'invite'});
console.log('root loaded');
},
});
Here is the list of packages
accounts-facebook 1.0.10 Login service for Facebook accounts
accounts-password 1.2.14* Password support for accounts
alanning:roles 1.2.15 Authorization package for Meteor
aldeed:collection2 2.9.1 Automatic validation of insert and update operations on the client and server.
aldeed:simple-schema 1.5.3 A simple schema validation object with reactivity. Used by collection2 and autoform.
arillo:flow-router-helpers 0.5.2 Template helpers for flow-router
blaze-html-templates 1.0.4 Compile HTML templates into reactive UI with Meteor Blaze
check 1.2.3 Check whether a value matches a pattern
dburles:collection-helpers 1.0.4 Transform your collections with helpers that you define
ecmascript 0.5.7* Compiler plugin that supports ES2015+ in all .js files
email 1.1.16* Send email messages
es5-shim 4.6.13* Shims and polyfills to improve ECMAScript 5 support
hpx7:youtube-iframe-player 0.4.15 Control YouTube's embedded player using Meteor
http 1.2.8* Make HTTP calls to remote servers
jazeee:spiderable-longer-timeout 1.2.13 Extended spiderable package: SSL, caching, longer timeout, no stdin issues, publish flag
jchristman:tagsinput-autocomplete-edited 1.1.0+ A combination of the mizzao:autocomplete library and a tagsinput-like functionality
jquery 1.11.9 Manipulate the DOM using CSS selectors
kadira:blaze-layout 2.3.0 Layout Manager for Blaze (works well with FlowRouter)
kadira:flow-router 2.12.1 Carefully Designed Client Side Router for Meteor
keepnox:perfect-scrollbar 0.6.8 Perfect-scrollbar packaged for meteor
manuel:reactivearray 1.0.5 Reactive Array for Meteor
matb33:collection-hooks 0.8.3* Extends Mongo.Collection with before/after hooks for insert/update/remove/find/findOne
meteor-base 1.0.4 Packages that every Meteor app needs
meteorhacks:aggregate 1.3.0 Proper MongoDB aggregations support for Meteor
mobile-experience 1.0.4 Packages for a great mobile user experience
momentjs:moment 2.14.4 Moment.js (official): parse, validate, manipulate, and display dates - official Meteor packaging
mongo 1.1.10* Adaptor for using MongoDB and Minimongo over DDP
reactive-dict 1.1.8 Reactive dictionary
reactive-var 1.0.10 Reactive variable
sacha:spin 2.3.1 Simple spinner package for Meteor
saucecode:timezoned-synced-cron 1.2.11 Fork of original w/ timezone support. Define and run scheduled jobs across multiple servers.
session 1.1.6 Session variable
spiderable 1.0.13 Makes the application crawlable to web spiders
standard-minifier-css 1.1.8* Standard css minifier used with Meteor apps by default.
standard-minifier-js 1.1.8* Standard javascript minifiers used with Meteor apps by default.
tomwasd:flow-router-seo 0.0.3 A simple way to set the title and meta tags for sites using flow router
tracker 1.1.0 Dependency tracker to allow reactive callbacks
twbs:bootstrap 3.3.6 The most popular front-end framework for developing responsive, mobile first projects on the web.
What is it that is causing the app not to find the routes file? I have looked through the following posts for some guidance, but have found none.
Meteor Routing Error : There is no route for the path: /
https://github.com/kadirahq/flow-router/issues/608
https://github.com/kadirahq/flow-router/issues/185
http://coderchronicles.org/2016/04/08/getting-started-with-meteor-1-3-react-and-flowrouter/
Any help solving the problem would be appreciated. I feel like I'm missing something simple.
-S
**project file structure
imports/
startup/
client/
index.js
routes.js
server/
fixtures.js
index.js
api/
server/
publications.js
ui/
components/
layouts/
pages/
client/
main.js
head.js
main.js
server/
main.js
fixtures.js
server-global.js
Are you importing the routes file into your app's main container?
For example, if you have a /client/main.js file that gets loaded from client side at startup, then it should include the import reference to routes file as follows:
import '/imports/startup/client';
Or, import '/imports/startup/client/routes.js';
Put your route file in 'imports/starup/lib' (lib - for example). In fast-render package recommended use 'lib', if you wanna use it. If no - 'client';
Then make sure you imported your route file in 'root/client/main.js';
Please, read this part of docs: https://guide.meteor.com/structure.html#javascript-structure
It is very helpful article.
UPD:
Please, remove duplicate files in your client/main.js
When, in client/main.js
import '/imports/startup/client';
In your imports/startup/client/index.js
import './routes.js';
And now it will work.
Dont forget, you must import all views you wanna use in your route.
Problem fixed. Instead of launching with meteor run, need to launch with meteor --settings settings.json --production
I keep getting the error in console
W20150601-13:28:19.607(-4)? (STDERR) The spacjamio:chai package has been renamed to practicalmeteor:chai. Please use the new package name instead.
But the spacjamio:chai package has not been added to my project. Why do I keep getting this message?
When I search the hidden meteor build folder I do see a js file for the spacjamio:chai package. Do I just delete this?
Here is my package list
meteor-platform
accounts-password
stylus
mquandalle:jade
coffeescript
sacha:spin
natestrauser:font-awesome
multiply:iron-router-progress
iron:router
alanning:roles
twbs:bootstrap
msavin:mongol
msavin:jetsetter
random
cmather:handlebars-server
email
mrt:moment
themeteorchef:bert
cunneen:mailgun
ian:accounts-ui-bootstrap-3
aldeed:simple-schema
zimme:collection-timestampable
aldeed:collection2
mike:mocha
practicalmeteor:chai
UPDATE:
The error seems to stop when I remove the mike:mocha package. But mike:mocha package seems to require the newest name for chai package.
If you didn't add it and don't need it, I'd just remove it with...
meteor remove practialmeteor:chai
in the console. Worth a shot at least, if it breaks stuff you can always add it back.
I have trouble setting up a simple iron:router example: (docs, sample app)
meteor create testapp
cd testapp
home.html:
<template name="Home">
<h1>Welcome</h1>
home
</template>
router.js:
Router.route('/', function () {
this.render('Home'); // Also tried 'home'
});
Starting the server:
meteor
Then I get (client side):
Exception from Tracker recompute function: Error: Couldn't find a template named "/" or "". Are you sure you defined it?
at null._render (http://localhost:3000/packages/iron_dynamic-template.js?32038885cb1dad7957291ffebfffcb7f8cd57d20:239:17)
at doRender (http://localhost:3000/packages/blaze.js?88aac5d3c26b7576ac55bb3afc5324f465757709:1853:25)
...
What am I doing wrong ?
Note: I get the exact same error if I clone the example application (basic.html and basic.js).
meteor list
autopublish 1.0.1 Publish the entire database to all clients
insecure 1.0.1 Allow all database writes by default
iron:router 0.9.4 Routing specifically designed for Meteor
meteor-platform 1.1.2 Include a standard set of Meteor packages in your app
Also:
meteor --version
Meteor 0.9.4 <- Why all standard packages and meteor platform are > 1.0 and this is 0.9.4 ?
Currently, there are two versions of iron:router.
iron:router#0.9.4 is the one added by default when you type meteor add iron:router, this version is the latest in the "legacy" branch of iron:router that came up more than one year ago, it's the one that everyone is probably still using, although they should definitely update to...
iron:router#1.0.0-preX with X = 4 as of 20/10/2014, which is a complete rewrite of the package intended to be backward compatible, but introducing a new, nicer and polished API. This version will likely be set as default when meteor hits 1.0.0 later this year. The problem is that github page of iron:router shows this particular branch (1.0.0-pre4) along with examples that people believe are usable with 0.9.4.
This means that you are most likely using the wrong version of iron router, remove it with meteor remove iron:router and meteor add iron:router#1.0.0-pre4 instead.
Recommended reading to learn about the latest iron:router syntax :
http://eventedmind.github.io/iron-router/
Sometimes the guide is not completely up-to-date with the pre-release version, if you want to keep up with the latest stuff take a look at github issues.
As per this https://hackpad.com/Migrating-Packages-zN0we9sIjkH I created a new meteor package and currently facing a problem when trying to publish.
PackageName : 'UserId:packageName'
To add package : 'meteor add packageName' (mateor add UserId:packageName did not work).
Package runs locally without any issue.
When I tried to publish,
cd path/to/your:package
meteor publish
Message :
There is no package named 'packageName'. If you are creating a new package, use the --create flag.
Publish failed.
Then I tried "meteor publish --create"
Message :
To confirm that you wish to create a top-level package with no account
prefix, please run this command again with the --top-level option.
(Only administrators can create top-level packages without an account prefix)
I used "UserId: PackageName" when creating the package and already log in to meteor account. Any idea to fix this issue?
Thanks !
Make sure the name field is in package.js:
Package.describe({
name: "user:packagename",
// other fields
});
Then, there will be no need to make sure the package is in a directory with the same name.
See https://github.com/mizzao/meteor-user-status for an example.
I am playing around with Meteor and I am trying, to connect the serverside of the application to another server S.
Therefore I want to open an TLS client socket and push the received data to the client, every time the server S transmits data.
Now I have two questions:
Can I require node packages in the usual way (e.g. var Candle = require('candle');)?
Is it possible, to create reactive code without writing the received data to a collection, which is stored in the mongodb database?
In other words, I just want to push the data to all clients, without saving it on the server.
1
To require a npm package, you need to install npm package via mrt add npm.
Then you add packages.json file with the list of necessary packages, for example:
{
"candle": "0.4.0",
"oauth": "0.9.11"
}
Afterwards, you can require the package with Meteor.require('candle');.
2
To create a reactive code you use Dependencies – see the documentation. Basically, you create a dep:
var dep = new Deps.Dependency();
mark the functions that should be recalculated when the dep is changed:
Templates.example.something = function() {
dep.depend();
...
}
And then change it when necessary:
dep.changed();
I can only answer your first question.
In order to integrate npm packages, you should add npm package via meteorite and create a packages.json file as documented here: https://github.com/arunoda/meteor-npm
Then you can load npm modules as follows:
var Candle = Meteor.require('candle');