Can not generate service, versioning conflict. What could I broke? - feathersjs

I use feathers for some months now and I already created and used several services. The app is generated with feather/cli command: 'feathers generate app'.
Today I tried to generate a new service with the usual command:
feathers generate service
only to get the error:
× This version of the generator will only work with Feathers Buzzard (v3) and up. Please runfeathers upgradefirst.
Fine. Run the upgrade. Got new error:
throw new Error('It looks like#feathersjs/feathersis already a dependency. I can not run the upgrade again.');
^
checked the version: is 3.9.0
Uninstalled/re-installed feathers/cli
Nothing works. Not sure what I broke as I did not (remember to) upgrade anything since a couple of days ago when I created the last service. Feathers was not updated in the last 4 months.
I tried googling my error but it seems like nobody else has this problem so it has to be something I've done.
Any suggestions?
LE: I have in package.json dependencies:
"#feathersjs/errors": "^3.3.6",
"#feathersjs/express": "^1.3.1",
"#feathersjs/feathers": "^3.3.1",
"#feathersjs/socketio": "^3.2.9",
"feathers-knex": "^5.0.7",
"feathers-memory": "^3.0.2",
"feathers-rest": "^1.8.1",
"feathers": "^2.2.4",```

This error will be shown if you still have the feathers module in your dependencies in your package.json. If #feathersjs/feathers is already included as well you can just remove the feathers dependency (after making sure it is not used anywhere else in your application which it shouldn't).

Related

I have a problem importing a Bit compiler. How can I resolve the following error?

I'm working with 'Bit' to create reusable React components. I have created my 'Bit' account and followed tutorials on the web to log on to Bit from the terminal and I have initialized the Bit workspace. I am encountering the following error when importing the React compiler.
$ bit import bit.envs/compilers/react --compiler
fatal: unable to connect to a remote legacy SSH server from Harmony client
Any advice would be appreciated.
the compiler flag was removed in 0.0.537
harmony became default in 0.0.438 (so legacy was last default in 0.0.437)
but ... if you try to run this on 0.0.437 now, you're likely to get an error:
server responded with: "Please update your Bit client.
For additional information: https://docs.bit.dev/docs/installation#latest-version"
the best place to get bit.dev answers is their community Slack here: https://join.slack.com/t/bit-dev-community/shared_invite/zt-o2tim18y-UzwOCFdTafmFKEqm2tXE4w.

Cakephp 3.9 Application Class not found

After updating from Cake 3.8 to latest 3.9 my site no longer loads:
( ! ) Fatal error: Uncaught Error: Class 'Application' not found in webroot\index.php on line 31
( ! ) Error: Class 'Application' not found in webroot\index.php on line 31.
My src/App;lication.php;
require dirname(__DIR__) . '/vendor/autoload.php';
use App\Application;
use Cake\Http\Server;
// Bind your application to the server.
$server = new Server(new Application(dirname(__DIR__) . '/config'));
// Run the request/response through the application
// and emit the response.
$server->emit($server->run());
Line 31 is:
new Server(new Application(dirname(DIR) . '/config'));
I have tried to debug this and the error comes from the 'new Application'. As far as I can see the way that the Application class is referenced is as it is done elsewhere, in cake.php for example.
I have checked the book for version 3.9 release notes. It seems there are a few other posts on SO reporting similar issues with earlier 3.x versions but none with a proper answer.
Any suggestions as I am totally at a loss.
I created a new project via composer-update and installed all packages as required. I then copied the vendor folder of new project into the old broken project to fix. Problem was in the vendor folder it seems - what the issue was remains a mystery and I am still not clear how the problem was introduced.
The composer.json file needs this section
"autoload": {
"psr-4": {
"App\\": "src/"
}
to tell Composer to load the App namespace (along with others) into vendor/composer/autoload_psr4.php.
Then run composer dump-autoload or composer update.
I had the same problem upgrading from 2.10.24 to 3.9.

Dropped rows in Spark when modifying database in MySQL

I've been following the 5 min how to for setting up an htap databse with tidb_tispark and everything works until I get to the section Launch TiSpark. My first issue occurs when executing the line:
docker-compose exec tispark-master /opt/spark-2.1.1-bin-hadoop2.7/bin/spark-shell
But I got around that by modifying the spark version to the version I found inside the container:
docker-compose exec tispark-master /opt/spark-2.3.3-bin-hadoop2.7/bin/spark-shell
My second issue occurs when executing the three line block:
import org.apache.spark.sql.TiContext
val ti = new TiContext(spark)
ti.tidbMapDatabase("TPCH_001")
When I run the last statement I get the following output
scala> ti.tidbMapDatabase("TPCH_001")
2019-07-11 16:14:32 WARN General:96 - Plugin (Bundle) "org.datanucleus" is already registered. Ensure you dont have multiple JAR versions of the same plugin in the classpath. The URL "file:/opt/spark/jars/datanucleus-core-3.2.10.jar" is already registered, and you are trying to register an identical plugin located at URL "file:/opt/spark-2.3.3-bin-hadoop2.7/jars/datanucleus-core-3.2.10.jar."
2019-07-11 16:14:32 WARN General:96 - Plugin (Bundle) "org.datanucleus.api.jdo" is already registered. Ensure you dont have multiple JAR versions of the same plugin in the classpath. The URL "file:/opt/spark/jars/datanucleus-api-jdo-3.2.6.jar" is already registered, and you are trying to register an identical plugin located at URL "file:/opt/spark-2.3.3-bin-hadoop2.7/jars/datanucleus-api-jdo-3.2.6.jar."
2019-07-11 16:14:32 WARN General:96 - Plugin (Bundle) "org.datanucleus.store.rdbms" is already registered. Ensure you dont have multiple JAR versions of the same plugin in the classpath. The URL "file:/opt/spark/jars/datanucleus-rdbms-3.2.9.jar" is already registered, and you are trying to register an identical plugin located at URL "file:/opt/spark-2.3.3-bin-hadoop2.7/jars/datanucleus-rdbms-3.2.9.jar."
2019-07-11 16:14:36 WARN ObjectStore:568 - Failed to get database global_temp, returning NoSuchObjectException
This doesn't prevent me from running the query:
spark.sql("select * from nation").show(30);
But when I follow the further steps of the tutorial to modify the db from MySQL, the changes are not reflected immediately in Spark. Furthermore, at some point in the future (I believe > 5 minutes later), the row that was modified stops showing up in Spark SQL queries.
I'm rather new to this kind of setup and don't really know how to debug this issue. Searches for the warnings I received weren't illuminating.
I don't know if it's helpful but when I connect MySQL this is the server version I get:
Server version: 5.7.25-TiDB-v3.0.0-rc.1-309-g8c20289c7 MySQL Community Server (Apache License 2.0)
I'm one of the main dev of TiSpark. Sorry for your bad experience with it.
Due to my docker problem, I cannot directly reproduce your issue but it seems you hit one of the bug fixed recently.
https://github.com/pingcap/tispark/pull/862/files
The tutorial document is not quite up-to-date and points to an older version. That's why it didn't work with spark 2.1.1 as in tutorial. We will update it ASAP.
Newer version of TiSpark doesn't use tidbMapDatabase anymore but hooks with catalog directly instead. Method tidbMapDatabase remains for backward compatibility. Unfortunately, the tidbMapDatabase had a bug(when we ported it from older version) that it retrieves timestamp for query only once you call the function. That causes TiSpark always uses old timestamp to do snapshot reading and newer data would never be seen by it.
In newer version of TiSpark (TiSpark 2.0+ with Spark 2.3+), databases and tables are directly hooked into catalog services and you can directly call
spark.sql("use TPCH_001").show
spark.sql("select * from nation").show
This should give you fresh data.
So try restart your Spark driver, just try the two lines of code above and see if it works.
Let me know if this fix your problem. On the other hand, we will check our docker image to make sure if it contains the fix already.
If things still get wrong, would you please help to run below code and let us know the version of TiSpark.
spark.sql("select ti_version()").show
Again, sorry for causing you trouble and thanks for trying.
EDIT
To address your comment:
The warning is due to spark itself will try to locate the database in its native catalog first and this will cause a Failed to get warning. But the failover process will delegate the search to tispark and then behave correctly. So this warning can be ignored. It's recommended that add below lines to your log4j.properties in conf folder of your spark.
log4j.logger.org.apache.hadoop.hive.metastore.ObjectStore=ERROR
We will polish the docker tutorial image soon. Thank you so much for trying.

Xcode Server Bot, ipatool error

We have an Xcode Server bot set up for CI for our project, using Xcode 7.1. It's set to produce an IPA. We only recently noticed, but a few weeks ago, it started giving this warning every build:
Bot Issue for CareConsult Bot (develop) (build service warning)
Assertion: exportArchive: ipatool failed with an exception:
File: (null):(null)
This prevents it from producing an IPA, which is a problem.
I've tried:
- Creating a new bot
- updating gems (saw a similar issue that was resolved this way)
Doing an archive & export on my local machine gives the same error if I choose to "Export for specific device". So the problem is not specific to the build server.
Any ideas?
My suspicion is that this has to do with enabling bit code, and the build bot is using the "compile from bitcode" option by default. I'm still digging into this, but figured I'd share what I have found thus far.

How do I determine which assembly is missing in Mono 2.10.2?

I have a web server with MONO 2.10.2 (fast-cgi) on a CentOS 6 box. Running a plain-vanilla MVC 3 site works great. However, when I add MySql.Data, it gives me a not-so-helpful error:
System.IO.FileLoadException: The assembly name is invalid.
My DLLs are in the right place. They're referenced properly. Everything has been done correctly, but Mono still complains that it can't find an assembly without telling me which one. The problem occurs after simply adding a reference to MySql.Data and without changing any code. I've looked through the MySql.Data source solution and the references that it needs seem to exist on the web server.
I understand other people have the same problem. I am happy to debug it myself, but I'm new to Mono and I can't figure out how to get a more-detailed error messages. I've checked Mono's site for instructions to enable more detailed logging, but their docs assume a certain base knowledge about Mono that I do not have.
Is there a way to get more detailed information when Mono fails to load an assembly?
I'm not sure if these details matter, but just in case...
- Mono: 2.10.2 (served via fastcgi-mono-server4)
- MySql: Connector.Net 6.4.4.0 (from the v4 set in the .Net & Mono download)
- Webserver: NGINX 1.0.11
- OS: CentOS 6
If you can get a "test case" that compiles to an application, try:
MONO_LOG_LEVEL="debug" MONO_LOG_MASK="dll" mono my_app.exe
Or just temporarily edit your CGI script so that it sets those two variables. Check the logs - you should see what is not loaded propely.