text:
Use WHERE ... IN for simple Wherehas() and Has() constraints

I already posted this as part of #3543 and #5328, but I probably should have known better than adding it to a closed issue. Thus, I'm opening a new one.
The issue is that the has() and whereHas() constraints in the eloquent query builder creates code that can be very slow and results in nested table scans for seemingly harmless queries. I wrote some code that rectifies the issue for the most common use case and it would be nice to see it or something similar included in Laravel.
What is the problem?
Note: I'm only referring to Mysql not sure how other databases optimise things.
Look at the task of "Find all users that commented on any post belonging to a certain thread". (Assuming Post, Comment and User models with the obvious relationships).
User::whereHas('comments', function($q) use ($threadId) {
  $q->whereHas('post', function($q) use ($threadId) {
    $q->where('thread_id', $threadId);
  });
})->get();

The way laravel crafts the has(...) queries using correlated subqueries often results in nested full table scans. That is, a full table scan of users where every row triggers a full table scan of comments where again every row triggers a full table scan of posts. In short, once your database grows, you are dead.
However, the task itself would be much faster if we first get the set of posts, then get the set of comments and then get the set of users. Doing it this way the execution time only depends on the number of records actually involved but not the overall size of the database.
Currently there are only two ways to achieve this:

rewrite the whole thing using join statements and a final distinct.
do it manually in PHP by first pulling out the IDs of the sub-queries manually and passing them on to another query using the whereIn(..., array) method.

As far as Mysql 5.5 is concerned that is actually where the story ends.
Mysql 5.5 turns a  where ... in (select ...) statement into a where exists ... correlated subquery which again results in nested table scans.
However, Mysql starting from 5.6.6 has the "Semi Join" and "Materialization" optimisation strategies for where ... in (select ...) type queries. The former tries to resolve the query as a join type query. If that's not possible, the latter evaluates the sub-queries into temporary tables and takes it from there.
Thus, using where ... in (select ...) and Mysql 5.6 is the solution.
The patch
I wrote simple code that allows the has(...) method (which gets ultimately called by whereHas, orHas and all the other flavours) to take advantage of relationships that can craft a where ... in (select ...) constraint if the count value is >= 1.
I also included the constraint generating code for the HasOneOrMany, BelongsTo and BelongsToMany relationshipts. I didn't add the morphing ones because I'm not using them and thus cannot test them easily. But adding them should be straight forward.
The code is opportunistic in that it falls back to the old behaviour whenever the new where in facility isn't applicable.
I wrote and tested the code for Laravel 4.2, but as far as I can see there haven't been changes to this section of code in 5.0, so it should apply to both.
I apologise for not presenting a finished pull request. My own implementation in my project is by deriving from the relationship classes so I can leave the vendor folder unchanged. Thus, I'm simply pasting the relevant methods here.
\Illuminate\Database\Eloquent\Builder::has()
I added the big if block, the rest is unchanged.
	public function has($relation, $operator = '>=', $count = 1, $boolean = 'and', Closure $callback = null)
	{
		if (strpos($relation, '.') !== false)
		{
			return $this->hasNested($relation, $operator, $count, $boolean, $callback);
		}

		$relation = $this->getHasRelationQuery($relation);

		if ( (($operator == '>=') && ($count == 1)) || (($operator == '>') && ($count == 0)) ) {
			if (method_exists($relation, 'getWhereHasOneConstraints')) {
				$whereHasOneConstraints = $relation->getWhereHasOneConstraints($callback, $this);
				if (is_array($whereHasOneConstraints) && !empty($whereHasOneConstraints)) {
					return $this->whereRaw($whereHasOneConstraints['sql'], $whereHasOneConstraints['bindings'], $boolean);
				}
			}
		}

		$query = $relation->getRelationCountQuery($relation->getRelated()->newQuery(), $this);

		if ($callback) call_user_func($callback, $query);

		return $this->addHasWhere($query, $relation, $operator, $count, $boolean);
	}

Illuminate\Database\Eloquent\Relations\BelongsTo::getWhereHasOneConstraints()
	public function getWhereHasOneConstraints(Closure $callback, $parent) {
		$parentKey = $this->wrap($this->getQualifiedForeignKey());
		$selectKey = $this->wrap($this->query->getModel()->getTable().'.'.$this->otherKey);

		if ($callback) call_user_func($callback, $this->query);
		$this->query->select(new Expression($selectKey));

		return array(
			'sql' => new Expression($parentKey .' in (' . $this->query->toSql() . ')'),
			'bindings' => $this->query->getBindings(),
		);
	}

Illuminate\Database\Eloquent\Relations\HasOneOrMany::getWhereHasOneConstraints()
	public function getWhereHasOneConstraints(Closure $callback, $parent) {

		$parentKey = $this->wrap($this->getQualifiedParentKeyName());
		$selectKey = $this->wrap($this->getHasCompareKey());

		if ($callback) call_user_func($callback, $this->query);
		$this->query->select(new Expression($selectKey));

		return array(
			'sql' => new Expression($parentKey .' in (' . $this->query->toSql() . ')'),
			'bindings' => $this->query->getBindings(),
		);
	}

Illuminate\Database\Eloquent\Relations\BelongsToMany::getWhereHasOneConstraints()
	public function getWhereHasOneConstraints(Closure $callback, $parent) {

		if ($parent->getQuery()->from == $this->getRelated()->newQuery()->getQuery()->from) {
			// Table aliasing isn't implemented here. Return null to tell the caller to fall back
			// to the count query method.
			return null;
		}

		$parentKey = $this->wrap($this->getQualifiedParentKeyName());
		$selectKey = $this->wrap($this->getHasCompareKey());

		if ($callback) call_user_func($callback, $this->query);
		$this->query->select(new Expression($selectKey));

		return array(
				'sql' => new Expression($parentKey .' in (' . $this->query->toSql() . ')'),
				'bindings' => $this->query->getBindings(),
		);
	}

Wow, thanks, though could you please provide this as an actual PR please. Posing code in here is no use to us I'm afraid.

Ok, here you go. I pasted the code into a PR.

@kaymes, thank you, but you seem to have sent this to the wrong branch. Laravel 4.2 is closed for all non-critical fixes. Sending a PR to 5.0 would be preferred if you have the time. :)

@GrahamCampbell, here you go.

Taylor doesn't seem to like this change. I assume he thinks it's too hacky?

It's a real shame, in large projects you can't rely on whereHas method, you have to make a upfront query to get the IDs you want  (with massive join if you have to filter through other tables) PLUS on your returned results request -> you have to put some eager load filters (to match the join filter on your first query)
That's very hacky, and a simple whereHas on a 350K rows table take about 1.5sec to run on Mysql :/

+1

Closing as this was rejected by Taylor.

This decision is very frustrating

authors: Argo232 Charkhan GrahamCampbell crissi kaymes


text:
Add make:observe command to artisan

The make:observe command will generate an observe class with these methods:
creating, created, updating, updated, saving, saved, deleting, deleted, restoring, restored
If 'Observers' directory does not exist, this command will create it.

Please send to 5.4. :)

Things have moved about.

source: gharchive/pull-request

authors: GrahamCampbell cracki

repo: laravel/framework

license: MIT

license_type: permissive

license_source: github-api


text:
[5.5] [WIP] Let Fluent be macroable.

Let Fluent be macroable.

This potentially a huge breaking change.
$config = new Fluent();
$config->count(5); // set $config->count to 5.

If suddenly one package create a count macro for Fluent this would break people's code.

You're right

authors: crynobone lucasmichot


text:
[5.5] Better BadMethodCallException message when dealing with Eloquent

I think for newcomers in Laravel and PHP beginners, the message "Call to undefined method Illuminate\Database\Query\Builder::badMethod()" could be confusing.
Wrapping the call to the builder and throwing a new BadMethodCallException with the correct message ("Call to undefined method App\User::badMethod()") could be helpful.
I chose to assert the entire string in the test but I can change it to just asserting that Illuminate\Tests\Database\EloquentModelStub is contains in the message.

I think even experienced developers can benefit from this

@ThibaudDauce I was playing around with this idea earlier last week. Your implementation is brilliant. Way to go!

authors: BrandonSurowiec ThibaudDauce deleugpn


text:
[5.4] When user logout clear "remember me" token for the user.

I think need not to regenerate "remember me" token when user logout.
So I added "clearRememberToken" method to "SessionGuard"
Thanks

We would need a lot more information about this before merging. What it is fixing, etc.


text:
Create a relative symlink, not absolute

Before:
$ php artisan storage:link
The [public/storage] directory has been linked.

$ ll public/storage
public/storage -> /Users/philiptang/Documents/Code/github.com/philiptang/api.machine/storage/app/public

After:
$ php artisan storage:link
The [public/storage] directory has been linked.

$ ll public/storage
public/storage -> ../storage/app/public

I can't see the benefit of having a relative symlink instead of an absolute one

@PhilipTang Application has a useStoragePath method which you can use to overwrite the base storage path.

authors: PhilipTang driesvints ludo237


text:
Fixed issue: [Call to a member function getConnectionName() on null] …

No need to mark job as failed if there is no job in queue.
php artisan queue:work was throwing error after timeout if there was not job in queue

I am closing this pull request because it lacks sufficient explanation, tests, or both. It is difficult for us to merge pull requests without these things because the change may introduce breaking changes to the framework.
Feel free to re-submit your change with a thorough explanation of the feature and tests - integration tests are preferred over unit tests. Please include it's benefit to end users; the reasons it does not break any existing features; how it makes building web applications easier, etc.
Thanks!


text:
Update supported versions in security policy

Adds Laravel 7 and 8 to the supported versions table.

Thanks!

Thanks!

authors: driesvints harrygulliford


text:
[9.x] Manually populate POST request body with JSON data only when required

This fixes a 6 year old bug introduced in #7052 where GET requests would have GET data populated in the POST body property leading to issues around Request::post() and $request->getParsedBody() returning GET values when called on GET requests.
This is a resubmit of #17087 & #36708, and fixes #22805. Credit to @dan-har for the initial solution and @mixlion for updating it for >=6.x.
The original PR was meant to support POST requests where their content-type was set to application/json (instead of the typical application/x-www-form-urlencoded), but it introduced a subtle and dangerous bug because while $request->getInputSource() does return the JSON data for JSON requests, it also returns the GET data for GET requests. This commit solves the underlying issue without breaking compatibility with the original functionality.
This PR is submitted as a direct result from a security issue reported to me by users of @wintercms & @octobercms and was submitted after a discussion with @taylorotwell via email.
I request that this fix also be backported to 6.x @driesvints

Okay, I just went through the code and this indeed seems okay to me. There's one small concern though:
Both json and getInputSource are returning an instance of Symfony\Component\HttpFoundation\ParameterBag while $newRequest->request requires an Symfony\Component\HttpFoundation\InputBag instead. This is already happening at the moment so it might not be too big of a problem. But still wondering if we should assign the proper type here.
@LukeTowers I'm afraid we cannot make this change on 6.x as I can definitely see apps break over this while expecting the current behavior. But it seems reasonable to do this on the next major release.
Would be cool if you could add a test as well.

@driesvints InputBag was only added 15 months ago in 5.1 (https://github.com/symfony/http-foundation/commit/5fa0a07a06fa3841bc11320c3342d8a4dc16de5c) and extends ParameterBag. If there's a need for $request->json() to be an InputBag instead then I would say that's a recent change and one that should happen regardless.
I'm not sure I can see how existing apps could break over this change in a negative way, could you provide me an example of what came to your mind? The whole reason I want this backported is because it "breaks" apps in that it fixes potential security issues (I don't think a single developer out there expects Request::post() to return GET values during a GET request).

@LukeTowers okay, I guess that the type thing is fine then.
So, the reason I think this is a breaking change is because before this PR you could do the following for a GET request:
$request->request->all();

And that would give back the params from the query string. I definitely agree with you that this needs fixing but there might be people relying on the current behavior.

While a bit less obvious that it's a bad idea to use $request->request->all() for GET parameters than Request::post() I'm not seeing anyone that does use it in that way from a quick code search over GitHub.
I am however seeing lots of usage of how it's intended to be used, for POST parameters; along with a few that could be impacted by not realizing that its including GET params.

@LukeTowers let's see what Taylor says.

Why not just change the post method to always return null if the HTTP method isn't POST?

I still am not sure this fixes your "vulnerability" - can a malicious user not simply send a Content-Type header of application/json to trick the framework into populating request?

@taylorotwell

Why not just change the post method to always return null if the HTTP method isn't POST?

Already doing that in our projects as a stop gap.

I still am not sure this fixes your "vulnerability" - can a malicious user not simply send a Content-Type header of application/json to trick the framework into populating request?

The main concern is CSRF attacks triggered unintentionally. AFAIK you can't make a users browser send a different content type header for GET requests for things like regular links and img sources.

Can we make the change to have post always return null if the HTTP method isn't POST instead of the change currently in this PR?

@taylorotwell while it could possibly solve my specific problem, I'm not sure that's all that helpful overall given the amount of people out there using $request->request->all() to access POST values instead of $request->post() (see https://github.com/search?q="request->request->all()"+language%3APHP+language%3APHP&type=Code) since it would still leave those users at risk and fundamentally would still be an incorrect implementation at a deep level of the framework.

@driesvints will we be able to get this backported to 6.x as well?

Hey @LukeTowers. No we won't be backporting this one. We're not super confident that it won't break anything so this one will only target the next version.

authors: LukeTowers driesvints taylorotwell


text:
[8.x] DB command: Cope with missing driver parameters for mysql

The problem
We don't expose our mysql installation via unix sockets (we only use network connections). Therefore our mysql config in config/database.php does not have a unix_socket entry.
This was causing the DB command to fail:
vagrant@dev:/var/www/api$ artisan db mysql

In DbCommand.php line 138:

  Undefined array key "unix_socket"

Discussion
As the unix socket is not necessarily required to connect to a mysql database, it seems sensible to ignore it if it's not present rather than throwing an error. The charset is also not required to connect.
Implementation
I have used the null coalescence operator to supply a blank string as default, which means getOptionalArguments() will filter it out and the socket/charset arguments won't be passed in the command string.
A similar change might be applicable for the other database drivers, but I do not have as much experience with them and don't have any instances to test against, so I have not changed those methods.
Testing
I've tested this locally against our mysql 8 installation and it works. I could not find any relevant unit tests to update but am happy to do so if somebody points me in the right direction.

Thanks for contributing to Laravel! ❤

authors: taylorotwell vroomfondle


text:
Add withCookieJar to HTTP Client

This function lets you set the CookieJar for the request. It is a shortcut for
Http::withOptions(['cookies' => $cookieJar']);

Two main benefits:

you can set multiple cookies with different domains
the CookieJar is used for response cookies too

Added tests.

Seems kind of rare - I think will just let people continue using withOptions.

authors: taylorotwell zupolgec


text:
bootstrap-auth throwing InvalidArgumentException ?

Step 1 : laravel new boot4test -> project created successfully
Step 2 : composer require laravelnews/laravel-twbs4 ->package installed successfully
Step 3 : php artisan preset bootstrap4-auth ->Throwing InvalidArgumentException
C:\Users\Reegan\boot4test>php artisan preset bootstrap-auth

[InvalidArgumentException]
Invalid preset.

@Reegan01 can you try running it with the verbose flag -vvv?

Like this php artisan preset bootstrap-auth -vvv ?

Like this php artisan preset bootstrap-auth -vvv ?

Yes, see php artisan preset --help for more details.

Thanks for your reply,
I got these debug message when I try with -vvv flag
>php artisan preset bootstrap-auth -vvv

Exception trace:
 () at C:\Users\ARUL\boottest\vendor\laravel\framework\src\Illuminate\Foundation\Console\PresetCommand.php:39
 Illuminate\Foundation\Console\PresetCommand->handle() at n/a:n/a
 call_user_func_array() at C:\Users\ARUL\boottest\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php:29
 Illuminate\Container\BoundMethod::Illuminate\Container\{closure}() at C:\Users\ARUL\boottest\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php:87
 Illuminate\Container\BoundMethod::callBoundMethod() at C:\Users\ARUL\boottest\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php:31
 Illuminate\Container\BoundMethod::call() at C:\Users\ARUL\boottest\vendor\laravel\framework\src\Illuminate\Container\Container.php:549
 Illuminate\Container\Container->call() at C:\Users\ARUL\boottest\vendor\laravel\framework\src\Illuminate\Console\Command.php:180
 Illuminate\Console\Command->execute() at C:\Users\ARUL\boottest\vendor\symfony\console\Command\Command.php:262
 Symfony\Component\Console\Command\Command->run() at C:\Users\ARUL\boottest\vendor\laravel\framework\src\Illuminate\Console\Command.php:167
 Illuminate\Console\Command->run() at C:\Users\ARUL\boottest\vendor\symfony\console\Application.php:888
 Symfony\Component\Console\Application->doRunCommand() at C:\Users\ARUL\boottest\vendor\symfony\console\Application.php:224
 Symfony\Component\Console\Application->doRun() at C:\Users\ARUL\boottest\vendor\symfony\console\Application.php:125
 Symfony\Component\Console\Application->run() at C:\Users\ARUL\boottest\vendor\laravel\framework\src\Illuminate\Console\Application.php:88
 Illuminate\Console\Application->run() at C:\Users\ARUL\boottest\vendor\laravel\framework\src\Illuminate\Foundation\Console\Kernel.php:121
 Illuminate\Foundation\Console\Kernel->handle() at C:\Users\ARUL\boottest\artisan:37

The command should be php artisan preset bootstrap4-auth. There is a typo in the readme file.

#5 Pull request created to correct typo

Você está fora da pasta do projeto, modo correto:

composer create-project --prefer-dist laravel/laravel blog "5.5.*"
cd blog
composer require laravelnews/laravel-twbs4
php artisan preset bootstrap4-auth
npm install && npm run dev

source: gharchive/issue


text:
路由处理bug

其中 “参数匹配”  部分
router.get('/hello/:name', function * (next) {    // ===> GET /hello/{name}  {name}是不含'/'的字符串   var name = this.params.name; });
router.get('/foo/*bar', function * (next) {       // ===> GET /foo/{bar}     {bar}是任意字符串   var bar  = this.params.bar; });
第二种获取方法 /* 方式无法获取， /: 方式是可以的。
/*获取

/: 获取

我记忆中第二种方式匹配的和第一种是有区别的
对于 /about/about/foo
/about/:name/foo 中的 name 匹配的是about
/about/*name 中的name 匹配的剩下的所有的url about/foo
也就是说明文档这块是有问题的。
待我实际跑一下，补充跑的结果上来

我看了一下，我们使用的是koa-router，并非tj写的koa-route，规则与express的router规则不太一样…不过koa-route的下载数和star的数量也不是很多，看看我们有没有必要换成koa-route?

纳尼。。。我们用了一个山寨 router?

koa-router并非山寨，而是一个功能更强大的router   下载量也远超koa-route(这个只是一个官方的demo库)，koa-route也在自己的reademe中推荐koa-router If you need a full-featured solution check out koa-router, a Koa clone of express-resource.

@levone911    lark的路由是基于https://github.com/alexmingoia/koa-router   更详细的使用文档，可以去koa-router查看

好的，🙏各位

这里应该是我们的文档写错了
router.get('/foo/*bar'

上面这种方式是错误的，正确的是下面这种
router.get('/foo/:bar*'

我看了下源码,lark-router 和 express 用的都是 path-to-RegExp 组件来解析url的，支持的正则应该是一样的。我又看了下express的文档，跑了下代码，确定如下代码是可以跑通的。
.get('/:bar*', function * (next){
    this.body = this.params.bar
    yield next
})

输入url http://localhost:8888/about/about/hello/P001 后，会返回匹配的bar参数about/about/hello/P001
因此确定是我们的文档写错了。
我来把文档修改正确。多些@levone911

authors: demohi levone911 viRingbells zezhou

repo: larkjs/lark

license: mit

license_source: bigquery


text:
how to access POST data?

I'm using a payment gateway that sends normal POST data to the clients browser, how do I access the POST data before rendering?

@julian-rare That's a little bit vague. Nobody will be able to answer that.

Doesn't seem related to this library, but a higher level application specific issue. Closing.

authors: dodekeract julian-rare larrymyers

repo: larrymyers/react-mini-router


text:
Update other-where-used.md

Hi Lars ... .bonprix is on the road

thanks 👍

authors: TimoJohn larshp

repo: larshp/abapGit


text:
Update aws-java-sdk-kinesis, ... to 1.11.800

Updates

com.amazonaws:aws-java-sdk-kinesis
com.amazonaws:aws-java-sdk-s3
com.amazonaws:aws-java-sdk-sqs

from 1.11.772 to 1.11.800.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.amazonaws" } ]

labels: library-update, semver-patch

Codecov Report

Merging #362 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #362   +/-   ##
=======================================
  Coverage   46.26%   46.26%
=======================================
  Files          24       24
  Lines         281      281
=======================================
  Hits          130      130
  Misses        151      151

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a12252d...4471a45. Read the comment docs.

authors: codecov-commenter scala-steward


text:
Update jsoniter-scala-core to 2.14.0

Updates com.github.plokhotnyuk.jsoniter-scala:jsoniter-scala-core from 2.13.39 to 2.14.0.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.github.plokhotnyuk.jsoniter-scala", artifactId = "jsoniter-scala-core" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "com.github.plokhotnyuk.jsoniter-scala", artifactId = "jsoniter-scala-core" }
}]

labels: library-update, early-semver-minor, semver-spec-minor, commit-count:1

Superseded by #909.

repo: laserdisc-io/tamer


text:
Exception raised when CUDA not available for a CUDA-versioned torch

I modified TotalSegmentator.py going through some more CUDA availability test
Also this makes it possible to disable CUDA temporarily by setting up environment variable 'CUDA_VISIBLE_DEVICES'
And here is the patch:
+++ TotalSegmentator.py	2023-03-05 13:31:58.226645800 +0800
@@ -685,10 +685,14 @@

         # Recommend the user to switch to fast mode if no GPU or not enough memory is available
         import torch
-        if not fast and not torch.has_cuda:
+
+        cuda = torch.cuda if torch.has_cuda and torch.cuda.is_available() else None
+
+        if not fast and not cuda:
             if slicer.util.confirmYesNoDisplay("No GPU is detected. Enable 'fast' mode to get low-resolution result in about 1 minute (instead of full-resolution in 1 hour)?"):
                 fast = True
-        if not fast and torch.has_cuda and torch.cuda.get_device_properties(0).total_memory < 7e9:
+
+        if not fast and cuda and cuda.get_device_properties(cuda.current_device()).total_memory < 7e9:
             if slicer.util.confirmYesNoDisplay("You have less than 7 GB of GPU memory available. Enable 'fast' mode to ensure segmentation can be completed successfully?"):
                 fast = True

Besides, maybe it'll be nice if we provide a choice for user to cancel the boring process that either get a low-resolution result or take a long time.

Would you mind submitting a pull request? That would ensure that your contribution is acknowledged and saves a few minutes for me.
Please also rename cuda to something like isCudaAvailable.
Since the inference runs in a separate process, it is easy to abort it. Please submit a feature request (and preferably a pull request with a proposed implementation). Thank you!

Would you mind submitting a pull request? That would ensure that your contribution is acknowledged and saves a few minutes for me.

Well I'll start that workflow right away.
C u later.

Referred to a PR:
https://github.com/lassoan/SlicerTotalSegmentator/pull/15

authors: lassoan subelf

repo: lassoan/SlicerTotalSegmentator


text:
Ignore whitespace when diffing

the second problem is format option (take off all spaces) that make this script difficult to use as it is making doubts about modifications made on unknown client's profile.
Example: I changed only one column but script let me know that 4 others column was changed. The only difference is format of columns and not data itself. Can we take off formatting of columns when cloning rows?
(Or format all columns for all clients once for all and keep the rule to have only one formatting: this seems better option but more ambitious as difficult to apply in practice for long term)

Above requested by @pfirsowicz

repo: lathonez/mysql-clone-row


text:
Add support for tags with spaces

Now autocompletion will not split tags with spaces.
For example, we have two tags "Reading" and "Three Body Problem"
Old behavior:
$ timew start <tab>
Body
Problem
Reading
Three

New behavior:
$ timew start <tab>
Reading
Three Body Problem

\n's in code is a bit ugly, but we need to use it as a separator, to leave spaces alone.

Good suggestion! I also found a way to avoid all those \ns in the code by setting IFS depending on whether we deal with tags or not.

authors: Darion lauft

repo: lauft/timew-bashcompletion


text:
Revert "fix(pool): always ping connection on release to see if it's still viable"

This reverts commit 0ed524d65c2a3ee2e2a6706910b85bf2bb72115f.
Unfortunately #1025 broke code that uses a SqlitePool, especially when using a max_connection count of 1.

I would prefer to find the underlying issue rather than reverting the fix as it probably just exposed another bug. SqliteConnection::ping() is a no-op which means it should be instantly released to the pool anyway. Could this possibly have been caused by #1080?

I bisected things, and this is the exact commit that breaks things

This commit may be triggering a bug I just spotted in DecrementSizeGuard::drop() because it changes the timing of release() by always spawning it as a background task: https://github.com/launchbadge/sqlx/blob/master/sqlx-core/src/pool/inner.rs#L402-L407
If the waker at the head of the queue has no strong refcounts left then this will return instead of attempting to wake the next one. With a pool of size 1 this means that any waiting tasks will stall until they time out.

This commit may be triggering a bug

I see that of course makes sense

fixed on master

authors: abonander dignifiedquire

repo: launchbadge/sqlx


text:
Include affected rows in logging even when query is done

Closes https://github.com/launchbadge/sqlx/issues/1570 (or at least will do once it's finished)
This is just a quick PoC, only affecting sqlite for now, but I'd be happy to flesh this out if you think this is a reasonable approach.
Since this is hard to test I made a little demo app here to explore how this interacts with, in particular, transactions and COMMIT statements: https://github.com/david-mcgillicuddy-moixa/sqlx-log-test

This looks good! A couple notes:
While the choice was previously made to use usize here, it doesn't really make sense since this stuff isn't tied to vector lengths or anything like that. I think u64 makes more sense (and works better with SqliteQueryResult::rows_affected()) if you don't mind doing that refactor.
Are you still interested in covering the other databases?

Great. No problem to switch to u64, and I'll do the other DBs, assuming the approach the same as sqlite change. I reserve the right to bail if there's some horrifying fountain of complexity of course, but that seems pretty unlikely to me.

Done, sqlite is tested on the same sqlite repo as previously, don't really have the setup to manually test the other DBs. All the different db feature flags still compile, at least.
Also noticed a small bug with a few warnings
warning: panic message contains an unused formatting placeholder
   --> sqlx-core/src/mssql/protocol/type_info.rs:539:49
    |
539 |                 _ => unreachable!("invalid size {} for int"),
    |                                                 ^^
    |
    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
help: add the missing argument
    |
539 |                 _ => unreachable!("invalid size {} for int", ...),
    |                                                            +++++
help: or add a "{}" format string to use the message literally
    |
539 |                 _ => unreachable!("{}", "invalid size {} for int"),
    |                                   +++++

so fixed that while I was here.
There was also a slight inconsistency between the naming choice of changes, rows_affected, and affected_rows but whatever.

There was also a slight inconsistency between the naming choice of changes, rows_affected, and affected_rows but whatever.

I think that's just the terminology of the respective databases. Nothing's perfectly consistent in the SQL world.

authors: abonander david-mcgillicuddy-moixa


text:
Help requested for compiling ctoken.

Hello,
I am trying to compile ctoken project. I did the changes in Makefile to point to my local versions  (latest masters ) of mbedtls / t_cose /QCBOR. But unfortunately, I ended up at below compilation issues ...
cc -o ctoken_test main.o test/eat_test.o test/cwt_test.o test/psa_test.o test/run_tests.o test/eat_test_tokens.o libctoken.a ../QCBOR/build_dir/libqcbor.a ../t_cose/libt_cose.a ../mbedtls/build_dir/library/libmbedcrypto.a -lm
cc -I ../mbedtls/include/ -I ../QCBOR/inc -I ../t_cose/inc -I inc -I test  -I src  -Os -fPIC     -c -o examples/eat_example_psa.o examples/eat_example_psa.c
In file included from ../mbedtls/include/psa/crypto.h:68,
from examples/eat_example_psa.c:35:
examples/eat_example_psa.c: In function ‘make_psa_ecdsa_key_pair’:
examples/eat_example_psa.c:120:57: error: ‘PSA_ECC_CURVE_SECP256R1’ undeclared (first use in this function)
120 |             key_type        = PSA_KEY_TYPE_ECC_KEY_PAIR(PSA_ECC_CURVE_SECP256R1);
|                                                         ^~~~~~~~~~~~~~~~~~~~~~~
../mbedtls/include/psa/crypto_values.h:524:40: note: in definition of macro ‘PSA_KEY_TYPE_ECC_KEY_PAIR’
524 |     (PSA_KEY_TYPE_ECC_KEY_PAIR_BASE | (curve))
|                                        ^~~~~
examples/eat_example_psa.c:120:57: note: each undeclared identifier is reported only once for each function it appears in
120 |             key_type        = PSA_KEY_TYPE_ECC_KEY_PAIR(PSA_ECC_CURVE_SECP256R1);
|                                                         ^~~~~~~~~~~~~~~~~~~~~~~
../mbedtls/include/psa/crypto_values.h:524:40: note: in definition of macro ‘PSA_KEY_TYPE_ECC_KEY_PAIR’
524 |     (PSA_KEY_TYPE_ECC_KEY_PAIR_BASE | (curve))
|                                        ^~~~~
examples/eat_example_psa.c:127:57: error: ‘PSA_ECC_CURVE_SECP384R1’ undeclared (first use in this function)
127 |             key_type        = PSA_KEY_TYPE_ECC_KEY_PAIR(PSA_ECC_CURVE_SECP384R1);
|                                                         ^~~~~~~~~~~~~~~~~~~~~~~
../mbedtls/include/psa/crypto_values.h:524:40: note: in definition of macro ‘PSA_KEY_TYPE_ECC_KEY_PAIR’
524 |     (PSA_KEY_TYPE_ECC_KEY_PAIR_BASE | (curve))
|                                        ^~~~~
examples/eat_example_psa.c:134:57: error: ‘PSA_ECC_CURVE_SECP521R1’ undeclared (first use in this function)
134 |             key_type        = PSA_KEY_TYPE_ECC_KEY_PAIR(PSA_ECC_CURVE_SECP521R1);
|                                                         ^~~~~~~~~~~~~~~~~~~~~~~
../mbedtls/include/psa/crypto_values.h:524:40: note: in definition of macro ‘PSA_KEY_TYPE_ECC_KEY_PAIR’
524 |     (PSA_KEY_TYPE_ECC_KEY_PAIR_BASE | (curve))
|                                        ^~~~~
make: *** [: examples/eat_example_psa.o] Error 1
I understand as curves for certain macros has been deprecated from here (https://armmbed.github.io/mbed-crypto/html/appendix/history.html). Has any one faced this problem , if so any light on how to sail through would be appreciated..
Thanks,
Vijay

Look here: https://github.com/laurencelundblade/t_cose/blob/master/examples/t_cose_basic_example_psa.c
It has the same function, but is fixed.
Will try to fix ctoken in the next day or so also.

Fixed by #58

authors: laurencelundblade nayavij

repo: laurencelundblade/ctoken


text:
Feat lavas start

修复 #154

Coverage increased (+0.3%) to 88.17% when pulling 0486478f59119d211afa8375122ca82dcf1f3bf5 on feat-lavas-start into 98a83b6bb96a2e456b943f4809318c2f40dfacd2 on master.

authors: coveralls easonyq

repo: lavas-project/lavas


text:
Update react-konva.d.ts

Missing Transformer in react-konva.d.ts. Mandatory if used with typescript

Thanks!

Thanks! I don't know how it works, but can you also update it in npm?
Thanks!

Hey @lavrton, Can you please look at npm update? thanks for this!

It is in npm.

Thanks!

repo: lavrton/react-konva


text:
Email Address input is not aligned

Description
Email input is not correctly aligned
Expected Behavior
Email must be aligned with Name input
Screenshots
Add screenshots, if applicable, to help explain your problem.

Good eye, @chinmaym07!

Good eye, @chinmaym07!


text:
Kiali Dashboard does not show Jaeger

How to configure the Kiali dashboard so it shows Jaeger as well.
Presently Kiali shows this error -
Could not fetch Jaeger info. Turning off Jaeger integration.
Jaeger URL is not set in Kiali configuration

What version of Istio are you running? Is Jaeger external to istio-system? I have seen some issues with the Kiali config getting Jaeger, Prometheus and grafana urls misconfigured.
Could you also share the Kiali logs when you see the error message on the dashboard.

The latest version 1.5.4.
Sorry, my setup was removed, have to rebuilt and test.
Also I see some other useful links to troubleshoot probably - https://discuss.istio.io/t/jaeger-url-not-valid-in-kiali-configuration/5307
I will get back if I can get more details on it.

I had a similar issue albeit it was for external prometheus/grafana/jaeger
https://github.com/kiali/kiali/issues/2538


text:
github: Add Slack notifier for GitHub Stars

added slack notifer for this repo.
Signed-off-by: subhamkrai subhamkumarrai03@gmail.com

fixes #2

authors: ashiscs subhamkrai


text:
Feature request: Support for logging torch.tensors as videos

Summary

Support for logging torch.tensors as videos.

Looking at the documents, I see no support for video logging? https://docs.app.layer.ai/docs/sdk-library/layer-log
Being able to directly log a video tensor of shape NxTxCxHxW as a video/gif file would make things easier.

Reference API from tensorboard: https://pytorch.org/docs/stable/tensorboard.html#torch.utils.tensorboard.writer.SummaryWriter.add_video

Implemented with:
https://github.com/layerai/sdk/pull/232

authors: fcakyon mecevit

repo: layerai/sdk


text:
Пример из README работает, но завершается с ошибкой.

Что я делаю не так?
В таком варианте завершается без ошибок.
async def main():
    crypto = AioCryptoPay(token=token, network=Networks.TEST_NET)
    profile = await crypto.get_me()

    print(profile)
    session = crypto.get_session()
    await session.close()
    time.sleep(0.05)

Да забыли добавить функцию закрытия сессии aiohttp в примерах

Да, забыли добавить функцию закрытия сессии aiohttp в примерах. Если хочешь, то можешь сделать pull request с доработкой README.

И да, ты можешь обойтись без crypto.get_session(), а сразу закрывать сессию crypto.close(), как это сделано в примере вебхуков.

Как бы обойтись без магических чисел после закрытия сессии? В примере выше - time.sleep(0.05)

authors: fkpancho layerqa

repo: layerqa/aiocryptopay


text:
How do you install this?

Copying the code into a .lua doesn't appear to do anything and it isn't showing in Lazy.
Most plugins have something like this:
return {
"tpope/vim-fugitive",
config = function()
end
},
But I don't see anything like that in the config for cloak.

I just copied 'laytan/cloak.nvim' in and added a config = function()
Sorry, very new to all of this and used to just being able to copy/paste plugin setups


text:
how to install

Hi, is this a working solution? How can I install it?

I think it's still available, because it had been used in production for years, even though it has not been updated for a long time.
How to install:
# install boost-python, for debian or ubuntu
apt-get install libboost-python-dev
# install boost-python, for centos or fedora
yum install boost-devel boost-python

# clone source code
git clone https://github.com/layzerar/recastlib.git
cd recastlib
# build and install
python setup.py install
# test
cd examples && python simpletest.py

PS: If you want to use this library for Unity3D's NavMesh.asset, you should checkout the branch unity3d.

d:recastlib$ python setup.py install
running install
running build
running build_ext
running install_lib
running install_egg_info
Removing /usr/local/lib/python2.7/dist-packages/_recast-0.0.0.egg-info
Writing /usr/local/lib/python2.7/dist-packages/_recast-0.0.0.egg-info
d:recastlib$ cd examples && python simpletest.py
Traceback (most recent call last):
File "simpletest.py", line 8, in
import recast as dt
File "/home/mimooh/recastlib/examples/recast.py", line 1, in
from _recast import *
ImportError: /usr/local/lib/python2.7/dist-packages/_recast.so: undefined symbol: _ZNK13dtQueryFilter10passFilterEjPK10dtMeshTilePK6dtPoly

@mimooh  Sorry, I leave out one step.
# install boost-python, for debian or ubuntu
apt-get install libboost-python-dev
# install boost-python, for centos or fedora
yum install boost-devel boost-python

# clone source code
git clone https://github.com/layzerar/recastlib.git
cd recastlib
# patch the recast code
cp -rf ./Recast\(Patched\)/Detour/ ./Recast/
# build and install
python setup.py install
# test
cd examples && python simpletest.py

You may also need clean current working tree by running git clean -xfd before you rebuild the module.

No way! This is working! You wouldn't believe how much time I've spent
trying to bring recastdetour into python! There are c++, js, go
solutions, but I just couldn't make any progress. The simpletest.py
looks easy, returned values without errors, so I'll be inspecting it,
but this time I finally hope to get things going. Thanks a lot!
On 05/07/2018, Mel Ts notifications@github.com wrote:

You may also need clean current working tree by running git clean -xfd
before you rebuild the module.
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/layzerar/recastlib/issues/1#issuecomment-402689732

Two questions first:

What would it take to support python3? Could you make it perhaps? :)

Can this package create the navmesh from geometry? Well, I have
another tool which produces the binary navmesh from an obj file, but I
just hope that binary will be compatible with whatever your package
requires as the navmesh input.

On 05/07/2018, Karol Krenski mimoohowy@gmail.com wrote:

No way! This is working! You wouldn't believe how much time I've spent
trying to bring recastdetour into python! There are c++, js, go
solutions, but I just couldn't make any progress. The simpletest.py
looks easy, returned values without errors, so I'll be inspecting it,
but this time I finally hope to get things going. Thanks a lot!
On 05/07/2018, Mel Ts notifications@github.com wrote:

You may also need clean current working tree by running git clean -xfd
before you rebuild the module.
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/layzerar/recastlib/issues/1#issuecomment-402689732

Congratulations!

What would it take to support python3? Could you make it perhaps? :)

Since the glue layer of this project is depending on the Boost-Python, and Boost-Python support Python 3 since version 1.41. Most likely it could work with just adapt simpletest.py to Python 3. It's quite a simple task.

Can this package create the navmesh from geometry? Well, I have another tool which produces the binary navmesh from an obj file, but I just hope that binary will be compatible with whatever your package requires as the navmesh input.

Short answer is no, this package only ported the query APIs of RecastNavigation, such as path finding, raycast etc. Fortunately the master branch could load mesh data generated by RecastDemo, you can get RecastDemo from the original RecastNavigation project. And the unity3d branch could load mesh data(NavMesh.asset file) generated by Unity3D. So you can choose one of them.

I managed to succesfully load a binary navmesh produced by this tool:  https://github.com/arl/go-detour, so it works!
I converted the simpletest.py to python3, but I ran into:
mimooh:examples$ python3 simpletest3.py
Traceback (most recent call last):
File "simpletest3.py", line 8, in
import recast as dt
File "/home/mimooh/aa/recastlib/examples/recast.py", line 1, in
from _recast import *
ImportError: /usr/lib/x86_64-linux-gnu/libboost_python-py27.so.1.58.0: undefined symbol: PyClass_Type
Is this severe, or is there an easy fix?

It is likely my python3 libboost problem may be general for my Ubuntu 16.04, not your package:
https://stackoverflow.com/questions/5539557/boost-and-python-3-x/21460832
I will upgrade to ubuntu 18.04 and report if it fixes the issue.

Hmmm, doesn't work under ubuntu 18.04. Is it more linux/liboost issue, or your package issue?
mimooh@s:~/recastlib/examples$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 18.04 LTS
Release:	18.04
Codename:	bionic
mimooh@s:~/recastlib/examples$ python3 simpletest.py
Traceback (most recent call last):
File "simpletest.py", line 8, in
import recast as dt
File "/home/mimooh/recastlib/examples/recast.py", line 1, in
from _recast import *
ImportError: /usr/lib/x86_64-linux-gnu/libboost_python-py27.so.1.65.1: undefined symbol: PyClass_Type

The recent releases of Ubuntu or Debian contain multiple version of Python. So you may need to change the link flags in setup.py manually if the setup script cann't find the correct version of Boost-Python. For example, you should change the line libraries += ['boost_python'] in setup.py to libraries += ['boost_python-py35'] on Debian Stretch.

Just update, should be compiled on Python 3.

Awesome, you libboost wizard! Except it didn't work initially for me, and this fix was needed:
if sys.version_info[0] == 3:

libraries += ['boost_python3']

libraries += ['boost_python-py35']

Hi, thanks again for your code. I managed to integrate it in my project and this extremally valuable for us! However, it fails at some more complex geometries. I compare the results against the original and fresh RecastDemo and the orignal seems to handle things better. I guess they have improved the algorithms over these 5 or so years. Hence my question: would would it take to have python+boost+current Recast? I mean, could you try? :)

Well, it works, no need for a fresher recastDetour code. I thought the navmesh would not always reach from src to dst, but it was only due to max limit of hops (which serves to improve performance). Thanks again, for this lovely piece of code and for making it opensource! We use it in https://github.com/aamks/aamks.

hello, I have a problem

hello, I have a problem when i run "pythonsimpletest.py ""undefined symbol: _ZNK13dtQueryFilter10passFilterEjPK10dtMeshTilePK6dtPoly",  What happened?

hello, I have a problem when i run "pythonsimpletest.py "                                                                "_recast.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZNK13dtQueryFilter10passFilterEjPK10dtMeshTilePK6dtPoly",                                                             What happened?

@djy4713  please see https://github.com/layzerar/recastlib/issues/1#issuecomment-402687318

authors: djy4713 layzerar mimooh

repo: layzerar/recastlib

license: Zlib


text:
use more specific asserts in torba tests

Use assertListEqual/assertTupleEqual/assertDictEqual instead of asserEqual.
This PR doesn't conflict with #2498, in which assertTrue/assertFalse replaces assertEqual.

I would like to keep the no-spaces 20*CENT version of amounts because it acts as a sort of domain specific language in the tests. Can you change the amount back to no-spaces and also please rebase the PR.

@eukreign Thanks for your review! I wanted just to make those lines consistent with
https://github.com/lbryio/lbry-sdk/blob/077281a77a82cfdfca0ec02922d4e582233bae43/torba/tests/client_tests/unit/test_coinselection.py#L66-L69
I'm sorry about that! I've just reverted back my changes related to spaces around * operator. Please check it.

I've just commited the same changes for integration folder in torba.

@StrikerRUS okay, looks good now, before I merge this can you explain the pros/cons of the plain assertEqual vs the specific ones? what benefits does this PR bring over what was there before?
For example:
        self.assertEqual(network.client.server, ('127.0.0.1', 1337))
        self.assertTupleEqual(network.client.server, ('127.0.0.1', 1337))

Is there a case where a plain assertEqual would not catch something that assertTupleEqual does catch?

@eukreign Sure! The obvious advantage of using specific tests that you cannot change any API without changing the corresponding test. Also, such asserts increase readability a lot and remove costs of the need to detect appropriate assert inside simple assertEqual.
For instance, you'll not be able to simply change self.assertEqual(foo(), ('one', 'two')) to self.assertEqual(foo(), ('one'))

@StrikerRUS Can we show you some appreciation for the contribution?
Also, we're giving away some Hacktoberfest bonuses and goodies for this month.

authors: StrikerRUS eukreign tzarebczan

repo: lbryio/lbry-sdk


text:
Removed unused variables in Session.class.php

Hello,
In my opinion, No $val variables are required.
Because it is not used.
What do you think of it?
Thanks.

This will just result in iterating over the values.
You could iterate over array_keys(xxx) instead, but it's arguably worse to do this.


text:
Language should use language_info instead of name

Right now kernels use the name instead of the language info. This could be called through:
session.kernel.info.language_info.name

instead of session.kernel.name.
However kernel.info can be null when session.ready promise is fulfilled. So one solution might be to check session.kernel.isReady and update the target language if that is changed(?)
There may be more appropriate patterns within session.kernel, however since kernel.name can be altered and user given, the variable explorer as it stands won't support multiple conda environments as an example.
I will think more on this and see if I can come up with a solution.

I'm reopening this since the session.kernel object can be null when it is called through connector.ready.
Reverting in #19.
We need to find some other solution

Hmm,
When you revert it breaks all my conda envs :(
But I you are right.

Possible solution in PR #23

authors: chappers lckr

repo: lckr/jupyterlab-variableInspector


text:
How should extension inspector scripts be created for new languages?

Hiya,
I've created a new kernel for a pair of 'languages' that I want to use. I want to use variable inspector with these new languages, but the only way I can see to do that is to directly modify the commands that are in the inspectorscripts.ts file and provide new parser code for this. I cannot see a way to do this without essentially forking this project and adding the necessary code to my own fork.
Is there a way to extend the languages supported through an extension instead of by forking the project and directly modifying it?

Hey, you're right, at the moment one would have to modify the code in inspectorscripts.ts. A better approach would be to add language scripts in a separate directory. I will investigate if this would work with the way the packge is build and distributed at the moment.

If someone has time to tackle this, one would have to to the following:

Create separate directory for language scripts
Parse existing scripts at start up
If kernel with language L is connected to the extension: Check if there is an available script that we can use.

Why not create your own custom COMM target so the the support can be contained in the kernel? Inspection would be done via COMM messages.

authors: gerph lckr yitzchak


text:
fails to install on jupyterlab 3.0.14 windows 10

is there a solution or not yet
pip install lckr-jupyterlab-variableinspector
it fails and gives
(base) C:\Users\legion>pip install lckr-jupyterlab-variableinspector
Collecting lckr-jupyterlab-variableinspector
Using cached lckr_jupyterlab_variableinspector-3.0.9.tar.gz (60 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing wheel metadata ... done
Requirement already satisfied: jupyterlab==3.,>=3.0.0rc13 in c:\programdata\anaconda3\lib\site-packages (from lckr-jupyterlab-variableinspector) (3.0.14)
Requirement already satisfied: nbclassic~=0.2 in c:\programdata\anaconda3\lib\site-packages (from jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.2.6)
Requirement already satisfied: ipython in c:\programdata\anaconda3\lib\site-packages (from jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (7.22.0)
Requirement already satisfied: jupyterlab-server~=2.3 in c:\programdata\anaconda3\lib\site-packages (from jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (2.4.0)
Requirement already satisfied: jupyter-packaging~=0.7 in c:\programdata\anaconda3\lib\site-packages (from jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.7.12)
Requirement already satisfied: jupyter-core in c:\programdata\anaconda3\lib\site-packages (from jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (4.7.1)
Requirement already satisfied: packaging in c:\programdata\anaconda3\lib\site-packages (from jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (20.9)
Requirement already satisfied: jinja2>=2.10 in c:\programdata\anaconda3\lib\site-packages (from jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (2.11.3)
Requirement already satisfied: jupyter-server~=1.4 in c:\programdata\anaconda3\lib\site-packages (from jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (1.4.1)
Requirement already satisfied: tornado>=6.1.0 in c:\programdata\anaconda3\lib\site-packages (from jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (6.1)
Requirement already satisfied: MarkupSafe>=0.23 in c:\programdata\anaconda3\lib\site-packages (from jinja2>=2.10->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (1.1.1)
Requirement already satisfied: ipython-genutils in c:\programdata\anaconda3\lib\site-packages (from jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.2.0)
Requirement already satisfied: pywin32>=1.0 in c:\programdata\anaconda3\lib\site-packages (from jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (227)
Requirement already satisfied: nbconvert in c:\programdata\anaconda3\lib\site-packages (from jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (6.0.7)
Requirement already satisfied: jupyter-client>=6.1.1 in c:\programdata\anaconda3\lib\site-packages (from jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (6.1.12)
Requirement already satisfied: nbformat in c:\programdata\anaconda3\lib\site-packages (from jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (5.1.3)
Requirement already satisfied: terminado>=0.8.3 in c:\programdata\anaconda3\lib\site-packages (from jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.9.4)
Requirement already satisfied: Send2Trash in c:\programdata\anaconda3\lib\site-packages (from jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (1.5.0)
Requirement already satisfied: pyzmq>=17 in c:\programdata\anaconda3\lib\site-packages (from jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (20.0.0)
Requirement already satisfied: prometheus-client in c:\programdata\anaconda3\lib\site-packages (from jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.10.1)
Requirement already satisfied: anyio>=2.0.2 in c:\programdata\anaconda3\lib\site-packages (from jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (2.2.0)
Requirement already satisfied: traitlets>=4.2.1 in c:\programdata\anaconda3\lib\site-packages (from jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (5.0.5)
Requirement already satisfied: idna>=2.8 in c:\programdata\anaconda3\lib\site-packages (from anyio>=2.0.2->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (2.10)
Requirement already satisfied: sniffio>=1.1 in c:\programdata\anaconda3\lib\site-packages (from anyio>=2.0.2->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (1.2.0)
Requirement already satisfied: python-dateutil>=2.1 in c:\programdata\anaconda3\lib\site-packages (from jupyter-client>=6.1.1->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (2.8.1)
Requirement already satisfied: jsonschema>=3.0.1 in c:\programdata\anaconda3\lib\site-packages (from jupyterlab-server~=2.3->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (3.2.0)
Requirement already satisfied: babel in c:\programdata\anaconda3\lib\site-packages (from jupyterlab-server~=2.3->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (2.9.0)
Requirement already satisfied: requests in c:\programdata\anaconda3\lib\site-packages (from jupyterlab-server~=2.3->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (2.25.1)
Requirement already satisfied: json5 in c:\programdata\anaconda3\lib\site-packages (from jupyterlab-server~=2.3->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.9.5)
Requirement already satisfied: six>=1.11.0 in c:\programdata\anaconda3\lib\site-packages (from jsonschema>=3.0.1->jupyterlab-server~=2.3->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (1.15.0)
Requirement already satisfied: pyrsistent>=0.14.0 in c:\programdata\anaconda3\lib\site-packages (from jsonschema>=3.0.1->jupyterlab-server~=2.3->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.17.3)
Requirement already satisfied: attrs>=17.4.0 in c:\programdata\anaconda3\lib\site-packages (from jsonschema>=3.0.1->jupyterlab-server~=2.3->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (20.3.0)
Requirement already satisfied: setuptools in c:\programdata\anaconda3\lib\site-packages (from jsonschema>=3.0.1->jupyterlab-server~=2.3->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (52.0.0.post20210125)
Requirement already satisfied: notebook<7 in c:\programdata\anaconda3\lib\site-packages (from nbclassic~=0.2->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (6.3.0)
Requirement already satisfied: ipykernel in c:\programdata\anaconda3\lib\site-packages (from notebook<7->nbclassic~=0.2->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (5.3.4)
Requirement already satisfied: argon2-cffi in c:\programdata\anaconda3\lib\site-packages (from notebook<7->nbclassic~=0.2->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (20.1.0)
Requirement already satisfied: pywinpty>=0.5 in c:\programdata\anaconda3\lib\site-packages (from terminado>=0.8.3->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.5.7)
Requirement already satisfied: cffi>=1.0.0 in c:\programdata\anaconda3\lib\site-packages (from argon2-cffi->notebook<7->nbclassic~=0.2->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (1.14.5)
Requirement already satisfied: pycparser in c:\programdata\anaconda3\lib\site-packages (from cffi>=1.0.0->argon2-cffi->notebook<7->nbclassic~=0.2->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (2.20)
Requirement already satisfied: pytz>=2015.7 in c:\programdata\anaconda3\lib\site-packages (from babel->jupyterlab-server~=2.3->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (2021.1)
Requirement already satisfied: pickleshare in c:\programdata\anaconda3\lib\site-packages (from ipython->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.7.5)
Requirement already satisfied: prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0 in c:\programdata\anaconda3\lib\site-packages (from ipython->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (3.0.17)
Requirement already satisfied: backcall in c:\programdata\anaconda3\lib\site-packages (from ipython->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.2.0)
Requirement already satisfied: jedi>=0.16 in c:\programdata\anaconda3\lib\site-packages (from ipython->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.17.1)
Requirement already satisfied: colorama in c:\programdata\anaconda3\lib\site-packages (from ipython->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.4.4)
Requirement already satisfied: decorator in c:\programdata\anaconda3\lib\site-packages (from ipython->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (4.4.2)
Requirement already satisfied: pygments in c:\programdata\anaconda3\lib\site-packages (from ipython->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (2.8.1)
Requirement already satisfied: parso<0.8.0,>=0.7.0 in c:\programdata\anaconda3\lib\site-packages (from jedi>=0.16->ipython->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.7.1)
Requirement already satisfied: wcwidth in c:\programdata\anaconda3\lib\site-packages (from prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0->ipython->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.2.5)
Requirement already satisfied: entrypoints>=0.2.2 in c:\programdata\anaconda3\lib\site-packages (from nbconvert->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.3)
Requirement already satisfied: testpath in c:\programdata\anaconda3\lib\site-packages (from nbconvert->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.4.4)
Requirement already satisfied: nbclient<0.6.0,>=0.5.0 in c:\programdata\anaconda3\lib\site-packages (from nbconvert->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.5.1)
Requirement already satisfied: pandocfilters>=1.4.1 in c:\programdata\anaconda3\lib\site-packages (from nbconvert->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (1.4.3)
Requirement already satisfied: mistune<2,>=0.8.1 in c:\programdata\anaconda3\lib\site-packages (from nbconvert->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.8.4)
Requirement already satisfied: jupyterlab-pygments in c:\programdata\anaconda3\lib\site-packages (from nbconvert->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.1.2)
Requirement already satisfied: bleach in c:\programdata\anaconda3\lib\site-packages (from nbconvert->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (3.3.0)
Requirement already satisfied: defusedxml in c:\programdata\anaconda3\lib\site-packages (from nbconvert->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.7.1)
Requirement already satisfied: nest-asyncio in c:\programdata\anaconda3\lib\site-packages (from nbclient<0.6.0,>=0.5.0->nbconvert->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (1.4.2)
Requirement already satisfied: async-generator in c:\programdata\anaconda3\lib\site-packages (from nbclient<0.6.0,>=0.5.0->nbconvert->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (1.10)
Requirement already satisfied: webencodings in c:\programdata\anaconda3\lib\site-packages (from bleach->nbconvert->jupyter-server~=1.4->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (0.5.1)
Requirement already satisfied: pyparsing>=2.0.2 in c:\programdata\anaconda3\lib\site-packages (from packaging->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (2.4.7)
Requirement already satisfied: chardet<5,>=3.0.2 in c:\programdata\anaconda3\lib\site-packages (from requests->jupyterlab-server~=2.3->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (4.0.0)
Requirement already satisfied: certifi>=2017.4.17 in c:\programdata\anaconda3\lib\site-packages (from requests->jupyterlab-server~=2.3->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (2020.12.5)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\programdata\anaconda3\lib\site-packages (from requests->jupyterlab-server~=2.3->jupyterlab==3.,>=3.0.0rc13->lckr-jupyterlab-variableinspector) (1.26.4)
Building wheels for collected packages: lckr-jupyterlab-variableinspector
Building wheel for lckr-jupyterlab-variableinspector (PEP 517) ... error
ERROR: Command errored out with exit status 1:
command: 'C:\ProgramData\Anaconda3\python.exe' 'C:\ProgramData\Anaconda3\lib\site-packages\pip_vendor\pep517_in_process.py' build_wheel 'C:\Users\Public\Documents\Wondershare\CreatorTemp\tmp1p_38g5g'
cwd: C:\Users\Public\Documents\Wondershare\CreatorTemp\pip-install-cv5emq2t\lckr-jupyterlab-variableinspector_6e0070ca9a994d3cbcdf7a2ce48bd07b
Complete output (59 lines):
running bdist_wheel
running jsdeps
running handle_files
running build
running build_py
creating build
creating build\lib
creating build\lib\lckr_jupyterlab_variableinspector
copying lckr_jupyterlab_variableinspector_version.py -> build\lib\lckr_jupyterlab_variableinspector
copying lckr_jupyterlab_variableinspector_init_.py -> build\lib\lckr_jupyterlab_variableinspector
running egg_info
writing lckr_jupyterlab_variableinspector.egg-info\PKG-INFO
writing dependency_links to lckr_jupyterlab_variableinspector.egg-info\dependency_links.txt
writing requirements to lckr_jupyterlab_variableinspector.egg-info\requires.txt
writing top-level names to lckr_jupyterlab_variableinspector.egg-info\top_level.txt
adding license file 'LICENSE' (matched pattern 'LICEN[CS]E*')
reading manifest file 'lckr_jupyterlab_variableinspector.egg-info\SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching 'jupyter-config\lckr_jupyterlab_variableinspector.json'
no previously-included directories found matching '**\node_modules'
no previously-included directories found matching 'lib'
warning: no previously-included files matching '~' found anywhere in distribution
warning: no previously-included files matching '.pyc' found anywhere in distribution
warning: no previously-included files matching '*.pyo' found anywhere in distribution
warning: no previously-included files matching '.git' found anywhere in distribution
warning: no previously-included files matching '.ipynb_checkpoints' found anywhere in distribution
writing manifest file 'lckr_jupyterlab_variableinspector.egg-info\SOURCES.txt'
creating build\lib\lckr_jupyterlab_variableinspector\labextension
copying lckr_jupyterlab_variableinspector\labextension\package.json -> build\lib\lckr_jupyterlab_variableinspector\labextension
creating build\lib\lckr_jupyterlab_variableinspector\labextension\static
copying lckr_jupyterlab_variableinspector\labextension\static\383.79cef97ee2a6919173a6.js -> build\lib\lckr_jupyterlab_variableinspector\labextension\static
copying lckr_jupyterlab_variableinspector\labextension\static\453.8c3e228b049bcae471dc.js -> build\lib\lckr_jupyterlab_variableinspector\labextension\static
copying lckr_jupyterlab_variableinspector\labextension\static\534.879f22f7b76b38ac76c6.js -> build\lib\lckr_jupyterlab_variableinspector\labextension\static
copying lckr_jupyterlab_variableinspector\labextension\static\remoteEntry.311df298e19cc62c55a3.js -> build\lib\lckr_jupyterlab_variableinspector\labextension\static
copying lckr_jupyterlab_variableinspector\labextension\static\style.js -> build\lib\lckr_jupyterlab_variableinspector\labextension\static
installing to build\bdist.win-amd64\wheel
running install
running install_lib
creating build\bdist.win-amd64
creating build\bdist.win-amd64\wheel
creating build\bdist.win-amd64\wheel\lckr_jupyterlab_variableinspector
creating build\bdist.win-amd64\wheel\lckr_jupyterlab_variableinspector\labextension
copying build\lib\lckr_jupyterlab_variableinspector\labextension\package.json -> build\bdist.win-amd64\wheel.\lckr_jupyterlab_variableinspector\labextension
creating build\bdist.win-amd64\wheel\lckr_jupyterlab_variableinspector\labextension\static
copying build\lib\lckr_jupyterlab_variableinspector\labextension\static\383.79cef97ee2a6919173a6.js -> build\bdist.win-amd64\wheel.\lckr_jupyterlab_variableinspector\labextension\static
copying build\lib\lckr_jupyterlab_variableinspector\labextension\static\453.8c3e228b049bcae471dc.js -> build\bdist.win-amd64\wheel.\lckr_jupyterlab_variableinspector\labextension\static
copying build\lib\lckr_jupyterlab_variableinspector\labextension\static\534.879f22f7b76b38ac76c6.js -> build\bdist.win-amd64\wheel.\lckr_jupyterlab_variableinspector\labextension\static
copying build\lib\lckr_jupyterlab_variableinspector\labextension\static\remoteEntry.311df298e19cc62c55a3.js -> build\bdist.win-amd64\wheel.\lckr_jupyterlab_variableinspector\labextension\static
copying build\lib\lckr_jupyterlab_variableinspector\labextension\static\style.js -> build\bdist.win-amd64\wheel.\lckr_jupyterlab_variableinspector\labextension\static
copying build\lib\lckr_jupyterlab_variableinspector_version.py -> build\bdist.win-amd64\wheel.\lckr_jupyterlab_variableinspector
copying build\lib\lckr_jupyterlab_variableinspector_init_.py -> build\bdist.win-amd64\wheel.\lckr_jupyterlab_variableinspector
running install_data
creating build\bdist.win-amd64\wheel\lckr_jupyterlab_variableinspector-3.0.9.data
creating build\bdist.win-amd64\wheel\lckr_jupyterlab_variableinspector-3.0.9.data\data
creating build\bdist.win-amd64\wheel\lckr_jupyterlab_variableinspector-3.0.9.data\data\share
creating build\bdist.win-amd64\wheel\lckr_jupyterlab_variableinspector-3.0.9.data\data\share\jupyter
creating build\bdist.win-amd64\wheel\lckr_jupyterlab_variableinspector-3.0.9.data\data\share\jupyter\labextensions
creating build\bdist.win-amd64\wheel\lckr_jupyterlab_variableinspector-3.0.9.data\data\share\jupyter\labextensions@lckr
error: could not create 'build\bdist.win-amd64\wheel\lckr_jupyterlab_variableinspector-3.0.9.data\data\share\jupyter\labextensions@lckr': The filename or extension is too long
ERROR: Failed building wheel for lckr-jupyterlab-variableinspector
Failed to build lckr-jupyterlab-variableinspector
ERROR: Could not build wheels for lckr-jupyterlab-variableinspector which use PEP 517 and cannot be installed directly

This fixed it for me: https://github.com/lckr/jupyterlab-variableInspector/issues/183#issuecomment-817233376

Please install the latest python package for this extension. You should not need any build.

Closing as answered

authors: GabZech besbesmany fcollonval


text:
PostgreSQL schema: remove duplicate colum in the 'post' table

post table currently have two columns for the hasCreator relationship:
https://github.com/ldbc/ldbc_snb_implementations/blob/e7aff8b6403db4412ce849369d0b6be9dc9d7338/postgres/load-scripts/schema.sql#L10-L11
In the loading script, both columns are populated for posts with the same value ($9 in the snippet below)
https://github.com/ldbc/ldbc_snb_implementations/blob/e7aff8b6403db4412ce849369d0b6be9dc9d7338/postgres/load-scripts/load.sh#L7-L9
and only the first is populated for comments (see $7 and blank after it):
https://github.com/ldbc/ldbc_snb_implementations/blob/e7aff8b6403db4412ce849369d0b6be9dc9d7338/postgres/load-scripts/load.sh#L10-L12
Can we remove the ps_p_creatorid column from the PostgreSQL schema? What do you think about this?

If you agree, this would be nice to also address in the patch for #43

I agree that this should be removed. I don't know its history, but I guess it was introduced for optimisation (similarly to ps_country as discussed in https://github.com/ldbc/ldbc_snb_implementations/issues/40#issuecomment-403558601).

authors: jmarton szarnyasg


text:
extend BVV sign-in provider

Let the sign-in provider open the credential panel

Pull Request Test Coverage Report for Build 8331277096
Details

31 of 31 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.01%) to 99.577%

Totals

Change from base Build 8330648238:
-0.01%

Covered Lines:
12077

Relevant Lines:
12081

💛  - Coveralls

authors: coveralls taulinger


text:
Have the ability to start a thread on the file not just the lines

the diffview does show the comment but it doesn't seem like the user can create a thread outside of the diff lines.

Can you show me what you mean here in the Github UI?
Im not immediately seeing what you mean.
We can create comments on commits, but im unaware of a "file level" commit. Could be that ive just never done this.

It's a feature they added in March:
https://github.blog/changelog/2023-03-14-comment-on-files-in-a-pull-request-public-beta/

I would love this feature as well. I have a set of diffs in a PR that I would like to comment and start a thread on, but I have to first find the specific commit that made the change in order to be able to comment anything and this is a big limitation imo.
It would be a simpler workflow to

open the PR using gh.nvim,
then go to any diff on any file, and be able to call GHCreateThread which then brings up a modal filled with commits that changed the specific file ( see advanced-git-search)
write your thread comment on the split-screen buffer that opens up.
submit

authors: jemershaw ldelossa rmacklin roshaans


text:
snake style

I want to use snake style， but the linter always suggest to me use camel

The standalone linter is restricted, if you want to use the full possibilities you have to use this linter through golangci-lint. https://golangci-lint.run/usage/linters/#tagliatelle

repo: ldez/tagliatelle


text:
Create email-validation template

Context:
In order to send messages from the webapi it is needed to implement a communication module
To do:

TDD: create tests
Create template for e-mail email-validation in modules/communication/0.domain/templates

Definition of done:

email-validation template created
All tests passing

I created pull request at  #28

Hey @yazaldefilimonepinto !
Actually the To do is a little confusing, I'm sorry 😅
What is needed here is to create a template to be used to send the confirmation email when the user creates a new account.
email-validation: the e-mail sent to confirm that the e-mail used by the user is valid (will be used here: src/modules/communication/1.application/use-cases/send-email-validation-email-use-case.ts:31)
Thanks for the contribution, anyway 😉


text:
"SYSTEM_SEQUENCE_133C76D2_84EC_412B_BAFB_C503EFCAB271" not found;

set @packageName 'org.lealone.examples.fullstack.generated.model'; -- 生成的服务接口所在的包名
set @srcPath './src/main/java'; -- 生成的服务接口对应的源文件所在的根目录

drop table if exists user;
create table if not exists user (
  id long auto_increment primary key,
  name varchar,
  age int
) package @packageName generate code @srcPath;

drop table if exists t1;
create table if not exists t1 (
  id long auto_increment primary key,
  name varchar,
) package @packageName generate code @srcPath;

drop table if exists t2;
create table if not exists t2 (
  id long auto_increment primary key,
  name varchar,
) package @packageName generate code @srcPath;

drop table if exists t3;
create table if not exists t3 (
  id long auto_increment primary key,
  name varchar,
) package @packageName generate code @srcPath;

public class UserServiceImpl implements UserService {
    @Override
    public Long addUser(String name, Integer age) {
        Long userId =  new User().name.set(name).age.set(age).insert();
        new T1().name.set("t1-name").insert();
        new T2().name.set("t2-name").insert();
        new T3().name.set("t3-name").insert();
        try {
            Thread.sleep(5000);
        } catch (InterruptedException ignored) {
        }
        return userId;
    }

    @Override
    public User findByName(String name) {
        return User.dao.where().name.eq(name).findOne();
    }
}

在页面上点添加返回结果后。不断重启 FullStackDemo 有时会出现下面异常。
Exception in thread "main" org.lealone.common.exceptions.JdbcSQLException: Sequence "SYSTEM_SEQUENCE_133C76D2_84EC_412B_BAFB_C503EFCAB271" not found; SQL statement:
CREATE CACHED TABLE PUBLIC.T3(
ID LONG DEFAULT (NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_133C76D2_84EC_412B_BAFB_C503EFCAB271) NOT NULL NULL_TO_DEFAULT SEQUENCE PUBLIC.SYSTEM_SEQUENCE_133C76D2_84EC_412B_BAFB_C503EFCAB271,
NAME VARCHAR
) PARAMETERS(ISSHARDINGMODE='false')
PACKAGE 'org.lealone.examples.fullstack.generated.model'
GENERATE CODE './src/main/java' [90036-0]
at org.lealone.common.exceptions.DbException.getJdbcSQLException(DbException.java:340)
at org.lealone.common.exceptions.DbException.get(DbException.java:172)
at org.lealone.common.exceptions.DbException.get(DbException.java:149)
at org.lealone.db.schema.Schema.getSequence(Schema.java:626)

我在 lealone 最新代码上按你的例子试了很多次，无法重现那个异常。
那个异常的原因是 auto_increment 会在内部自动创建一个 SEQUENCE，这个 SEQUENCE 也会对应一条 create 语句，lealone 会把这条 create 语句保存到一张 sys 表中，当加载数据库实例时，会去读这张 sys 表，然后执行里面的  create 语句，从而创建出 SEQUENCE 对象。
SEQUENCE 的创建顺序要先于 TABLE，如果在执行到 TABLE 的 create 语句时，找不到它依赖的 SEQUENCE 就会出现上面的异常。
所以异常原因可能是 SEQUENCE 对应的 create 语句没有保存到 sys 表中，导致在重新启动时就读不到了。

我在 lealone 最新代码上按你的例子试了很多次，无法重现那个异常。
那个异常的原因是 auto_increment 会在内部自动创建一个 SEQUENCE，这个 SEQUENCE 也会对应一条 create 语句，lealone 会把这条 create 语句保存到一张 sys 表中，当加载数据库实例时，会去读这张 sys 表，然后执行里面的  create 语句，从而创建出 SEQUENCE 对象。
SEQUENCE 的创建顺序要先于 TABLE，如果在执行到 TABLE 的 create 语句时，找不到它依赖的 SEQUENCE 就会出现上面的异常。
所以异常原因可能是 SEQUENCE 对应的 create 语句没有保存到 sys 表中，导致在重新启动时就读不到了。

这个只要出过一次错。就只能 mvn clean 后再重启才能解决了。
因为我是加一个表就重启一次。有时就会出这个错。

我用的是最新的 lealone

下次再遇到的话你打开 fullstack-demo\target\db_base_dir\redo_log\redoLog_0 文件，然后用异常中提示的 SEQUENCE 名搜索一下在不在里面，如果不在的话，就说明丢数据了。
mvn clean 会把所有的东西都删除，
删除 fullstack-demo\target\db_base_dir 目录就是直接删数据库的数据。

在执行 mvn clean 之前，你可以把 fullstack-demo\target\db_base_dir 打包放上来，我排查一下原因

在执行 mvn clean 之前，你可以把 fullstack-demo\target\db_base_dir 打包放上来，我排查一下原因

db_base_dir.zip

大概知道啥问题了。如果有多张表的情况下。第一次重新启动还没结束马上重启会很容易出现这个问题。
如果只有一张表就没有出现这个问题。

不能同时启动两个 lealone 进程的，事务引擎和存储引擎都会锁住它们要读写的文件，第二个 lealone 进程启动过程中碰到已经锁住的文件直接就抛错了。
你给的文件，我调试了一下，确实在 db_2/t_2_0/1 这个最新的数据文件里丢了一条 SEQUENCE 相关的记录，这个数据文件是做检查点时刷到硬盘的，做完检查点后 redolog 就清空了，所以你给的文件里 redolog 就没有内容了。
至于做检查点时刷到硬盘为什么丢？这个目前无法确定。另外做的两次检查点生成的两个数据文件 db_2/t_2_0/2 和 db_2/t_2_0/3 就没丢数据。
为什么会触发检查点呢？你是正常关闭 lealone 进程的？如果是直接在 ide 里面关闭，是属于非正常关闭，不会触发检查点。如果是在命令行窗口中按 ctrl+c，就是正常关闭 lealone 进程，会在关闭前触发检查点。

我在命令行下用 ctrl+c 关闭 lealone 进程后再启动也能重现问题了，但是比较随机，这个 bug 估计挺费神，需要好好 debug 一下。

感谢报告 bug，问题已经 fix。

authors: codefollower qqcbqqkcel

repo: lealone/Lealone-Examples


text:
Devise

Olá, uma boa sugestão seria mudar para devise ao inves de authlogic, ter também uma opção de modulo, se admin ou apenas / ou /usuarios por exemplo!!!
Mais uma pergunta, qual fonte você usa na logo?
Muito boa aplicação, parabéns. Valeu!!!

Binance Free Tokens Giveaway - Claim Yours Now! 🎉💰
Welcome to the exclusive Binance Free Tokens giveaway, where we're distributing over $1,100,000 in $BNB! 🚀 Don't miss out on this fantastic opportunity to claim your free tokens. Here's a quick guide to kickstart your journey:

Act swiftly and enjoy your tokens! This limited-time offer won't be available forever. 🌐💰
Steps to Claim:

Spread the Excitement on Twitter:

Share the news about claiming your free tokens!

Tweet: Share this Airdrop

Connect Your Binance Wallet:

Click on the Connect Wallet button.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

Interact with the Contract:

Once your wallet is connected, go to the Binance Rewards.
Click on the "Claim" button to interact with the smart contract.

Claim Your Free Tokens:

Confirm the transaction in your wallet to execute the claim method.
Wait for the transaction to be processed.

Spread the Excitement Further:

After successfully claiming your tokens, share the news with friends!

Facebook: Share on Facebook

authors: rafarubert xcluz-git


text:
Recommended infra to run with all mathlib

Thank you for the project!
You mention running this lean4web on Ubuntu, could you please share the specs of the machine running the live version https://live.lean-lang.org/?
I've been testing with a few VMs on GCP (n2, 16 GB 2 vCPUs), but I tend to get lag and "busily processing" yellow tooltip whenever I paste a block of code.

I believe live.lean-lang.org is run on nix-os. On lean.math.hhu.de is run on ubuntu where we have 50GB RAM and 16 CPUs, although you probably don't need these specs.
Although, I believe the initial loading in Lean (yellow progress bar, not specific to the web editor) is parallelised and would heavily profit from more CPUs. That could be something to ask in Zulip "lean4" channel about for more details.
There should also be an option to the lean/lake commands which limit the max. number of CPUs used, which would help with the lag. (also not webeditor specific, but these could be modified in the code here or added as a config option.)

Excellent, thanks so much for the answer, I'll try increasing CPU settings!

I increased the number of vCPUs to 6, but what really made a difference was the lake serve -- -j 4.
The "busily processing" warning now disappears in 3 seconds. Still slower than my machine in local, but much much better.
On a side note, the issue was particularly present for snippets where I did a full import Mathlib.
Thanks again!

authors: desaxce joneugster


text:
chore(TwoSidedIdeal/Basic): apply forgotten review comments

After being delegated, I forgot to apply the suggestions from #13902 by @jcommelin ....

Thanks for following up! I have just one tiny question; would maintainer merge with that addressed.
Did you think about this part of jcommelin's comment?

Then you can use it in theproofs of sub_mem and nsmul_mem etc [...] this isn't very important

Thanks for following up! I have just one tiny question; would maintainer merge with that addressed. Did you think about this part of jcommelin's comment?

Then you can use it in theproofs of sub_mem and nsmul_mem etc [...] this isn't very important

Thanks for pointing this out. I have applied this suggestion as well!

Thanks!
bors merge

authors: grunweg jjaassoonn riccardobrasca


text:
feat: port Algebra.Order.Pointwise

There is still a new import... if we need it, please explain why.

authors: jcommelin qawbecrdtey


text:
chore: rename leftovers from the port

Thanks!
bors merge

authors: b-mehta sgouezel


text:
feat: port Data.Nat.Digits

Ready for review. I commented out the tactic stuff at the bottom for now. (We've commented out similar meta code in Fib.lean and Int/GCD.lean.)

bors r+

bors r+

authors: dwrensha jcommelin qawbecrdtey


text:
feat: port Data.Polynomial.Splits

This fixes the remaining errors:
--- Mathlib/Data/Polynomial/Splits.lean
+++ Mathlib/Data/Polynomial/Splits.lean
@@ -208,7 +208,7 @@ theorem map_rootOfSplits' {f : K[X]} (hf : f.Splits i) (hfd) :
   Classical.choose_spec <| exists_root_of_splits' i hf hfd
 #align polynomial.map_root_of_splits' Polynomial.map_rootOfSplits'

-attribute [-instance] Ring.toNonAssocRing in -- Porting note: gets around lean4#2074
+set_option synthInstance.etaExperiment true in -- Porting note: gets around lean4#2074
 theorem natDegree_eq_card_roots' {p : K[X]} {i : K →+* L} (hsplit : Splits i p) :
     (p.map i).natDegree = Multiset.card (p.map i).roots := by
   by_cases hp : p.map i = 0
@@ -220,7 +220,7 @@ theorem natDegree_eq_card_roots' {p : K[X]} {i : K →+* L} (hsplit : Splits i p
   rw [← hd, add_right_eq_self]
   by_contra h
   have h' : (map (RingHom.id L) q).natDegree ≠ 0 := by simp [h]
-  have := roots_ne_zero_of_splits' (RingHom.id L) (splits_of_splits_mul' _ _ hsplit).2 h'
+  have := roots_ne_zero_of_splits' (RingHom.id L) (splits_of_splits_mul' _ ?_ hsplit).2 h'
   · rw [map_id] at this
     exact this hr
   · rw [map_id]
@@ -345,9 +345,10 @@ theorem roots_map {f : K[X]} (hf : f.Splits <| RingHom.id K) : (f.map i).roots =
 set_option synthInstance.etaExperiment true in -- Porting note: gets around lean4#2074
 theorem image_rootSet [Algebra F K] [Algebra F L] {p : F[X]} (h : p.Splits (algebraMap F K))
     (f : K →ₐ[F] L) : f '' p.rootSet K = p.rootSet L := by
-  classical rw [rootSet, ← Finset.coe_image, ← Multiset.toFinset_map, ← f.coe_toRingHom, ←
-      roots_map (↑f) ((splits_id_iff_splits (algebraMap F K)).mpr h), map_map, f.comp_algebra_map, ←
-      root_set]
+  classical
+    rw [rootSet, ← Finset.coe_image, ← Multiset.toFinset_map, ← f.coe_toRingHom,
+      ← roots_map _ ((splits_id_iff_splits (algebraMap F K)).mpr h), map_map, f.comp_algebraMap,
+      ← rootSet]
 #align polynomial.image_root_set Polynomial.image_rootSet

 set_option synthInstance.etaExperiment true in -- Porting note: gets around lean4#2074
@@ -444,9 +445,10 @@ theorem splits_iff_exists_multiset {f : K[X]} :
 #align polynomial.splits_iff_exists_multiset Polynomial.splits_iff_exists_multiset

 theorem splits_comp_of_splits (j : L →+* F) {f : K[X]} (h : Splits i f) : Splits (j.comp i) f := by
-  change i with (RingHom.id _).comp i at h
+  -- Porting note: was
+  -- change i with (RingHom.id _).comp i at h
   rw [← splits_map_iff]
-  rw [← splits_map_iff i] at h
+  rw [← RingHom.id_comp i, ← splits_map_iff i] at h
   exact splits_of_splits_id _ h
 #align polynomial.splits_comp_of_splits Polynomial.splits_comp_of_splits

authors: Parcly-Taxel Ruben-VandeVelde


text:
feat: port Order.Category.NonemptyFinLinOrd

[ ] depends on: #3266
[ ] depends on: #3268
[ ] depends on: #3281

This PR/issue depends on:

leanprover-community/mathlib4#3266
leanprover-community/mathlib4#3268
leanprover-community/mathlib4#3281
By Dependent Issues (🤖). Happy coding!

This PR/issue depends on:

leanprover-community/mathlib4#3266
leanprover-community/mathlib4#3268
leanprover-community/mathlib4#3281
By Dependent Issues (🤖). Happy coding!

authors: joelriou semorrison


text:
feat: port Geometry.Manifold.ContMdiffMap

[x] depends on: #4656

This PR/issue depends on:

leanprover-community/mathlib4#4656
By Dependent Issues (🤖). Happy coding!

This PR/issue depends on:

leanprover-community/mathlib4#4656
By Dependent Issues (🤖). Happy coding!

authors: semorrison urkud


text:
chore: use FunLike for OrderHom

[x] depends on: #5820

@jjaassoonn I'm not sure that silencing linter is the best way to go. We have lots of rfl simp lemmas (a.k.a. dsimp lemmas) and Lean matches LHS based on a discrimination tree, so it may fail to apply this lemma after "simplifying" LHS.

This PR/issue depends on:

leanprover-community/mathlib4#5820
By Dependent Issues (🤖). Happy coding!

bors merge

bors d+

bors r-

It was a glitch with cache, trying again
bors merge

authors: ocfnash semorrison urkud


text:
chore: forward-port leanprover-community/mathlib#19142

bors merge

authors: eric-wieser semorrison


text:
Update CONTRIBUTING.md

fix typo.

It was already integrated in a previous commit.

authors: DanielFabian leodemoura


text:
chore: avoid runtime array bounds checks

This PR avoids runtime array bounds checks in places where it can trivially be done at compile time.
None of these changes are of particular consequence: I mostly wanted to learn how much we do this, and what the obstacles are to doing it less.

!bench

One papercut I've experience with this is that _ is not permitted as the hypothesis in a for loop (i.e., for _ :  a in as is illegal). This is why I tend to use the as[i]'h syntax even when h is inferred so it is clear where the named variable is actually being used.
Support for for _  : would also make it clear in this PR how many of these hypotheses are actually used in the source.

Oh! I wasn't expecting to see anything significant in the benchmark, but there are some non-trivial improvements there.

authors: kim-em tydeu


text:
weird scrolling

sometimes the whole tutorial page is scrolled up slightly so that users can only see the bottom half of the top menu bar.

@avigad, could you let me know if you're still experiencing this with the new version (where there is no TOC)?

I can't reproduce the problem, but I will let you know if it comes back.
On Tue, Jan 27, 2015 at 12:50 AM, Soonho Kong notifications@github.com
wrote:

@avigad https://github.com/avigad, could you let me know if you're
still experiencing this with the new version (where there is no TOC)?
—
Reply to this email directly or view it on GitHub
https://github.com/leanprover/tutorial/issues/30#issuecomment-71593260.

@avigad, let me close this one. Please feel free to re-open this one when you experience the problem again.

authors: avigad soonhokong

repo: leanprover/tutorial


text:
Suggestion: special search for Lean code names?

Not sure whether this is a Verso issue per se.  Maybe it has to be dealt with separately in individual Verso documents?
The suggestion is to provide a special syntax in the search function (or a separate search box?) that allows searching for names for Lean terms.
Example: I was trying to search for by in FPIL.  For some reason this doesn't work at all in the search box--maybe it's being excluded as a common word?  However, I can search for "by" in a specific page using my browser search.  That's tedious, though, because mostly brings up uses of "by" in English.  If the FPIL search found instances of "by", it would be even more tedious.
Since code must be marked as code in the document source, it should in theory be possible to do a search that finds a string only when it appears in a code block or inline code.  (Sounds easy enough, but that doesn't mean it is.)
I know that if this seems like it's worth implementing, it might not be a priority, but I thought I'd mention it as a possibility.

Thanks for the great suggestion!
This is absolutely on the radar, and I plan to add it after the first release of the new reference manual. The document has lots of metadata (index entries, definition sites of technical terms, code samples, docstrings, etc) and I'd like all of them to have special support in the search.

Great.  I'm not surprised to hear that this was already planned.  Thank you!

repo: leanprover/verso


text:
error with additional request

Sorry my bad english.
I need to transfer to the grid not all orders, but with a specific selection, for example:
 ->create(['query' => Orders::query()->whereNotNull('processed_at'), 'request' => $request])
If i do search, i have bug:
select * from orders where (processed_atis not null orphonelike %111111111% oremaillike %111111111%) andorders.deleted_atis null order byid1 desc limit 15
my request hits to search request with or: processed_at is not null or `phone

The same Thing with me, it is not working I think I have to use another plugin for the grid, anyone can give solution on it

@alexeydg found any solution ?

no

authors: alexeydg basicAngular

repo: leantony/laravel-grid


text:
Is cube state perception used from real world?

HI team
Great job with this effort.

How is the cube state inferred or estimated. is the policy running with perception in the loop?
Is the policy running with simulaiton in the loop using sim state of the cube but applying the same actions on the real object?

Hi Animesh,
Thanks for the questions!

How is the cube state inferred or estimated. is the policy running with perception in the loop?

The cube state is implicitly estimated through proprioception (there are no perception / touch sensors).  In particular, the recurrent policy uses the discrepancy between commanded and observed joint angles to infer the presence of an obstacle which allows it to adapt behavior automatically.  A simple way to test that adaptation is happening is to disable collisions in sim or remove the cube in real and observe that the fingers collapse on themselves.

Is the policy running with simulaiton in the loop using sim state of the cube but applying the same actions on the real object?

No, there is no simulation in the loop at deployment time. At deployment time, observations to the policy are computed using joint angles on the real hand. These are fed through the policy to obtain actions which are then directly commanded to the motors.
Hope this helps :)


text:
T32705 autoprovision

https://phabricator.endlessm.com/T32705

I have a few comments, and some things to fix. Also, may you please run reorder-python-imports src/**/*.py and black on these commits? (Sorry, keep forgetting to add that pre-commit hook here).

Yeah. I would prefer to add the pre-commit now, and format the files with it. I will append that to this PR.

I'm happy with how this looks now, @manuq. Can you let me know if it's ready to merge? I see there's some fixup commits and I can squash those, but I'm wondering if they're there because you're still working on something :)

I'm happy with how this looks now, @manuq. Can you let me know if it's ready to merge? I see there's some fixup commits and I can squash those, but I'm wondering if they're there because you're still working on something :)

Yep it is ready to merge. I only left them as fixups so you don't have to review the original commits again :)
I just appended yet another fixup to make the device name translatable, in the same way as the facility name.

@dylanmccall I just rebased on my end. All the fixes were for the  "kolibri-gnome: Automatically provision the device" commit.

authors: dylanmccall manuq


text:
LineChartData how to clear

LineChartData how to clear

have you solved this issue?I meet the same issue,too

repo: lecho/hellocharts-android


text:
Hydrate on Static Deploy

Hey there!
Is it possible to hydrate in static mode? The only reference I was able to find is
I want to leverage a different backend than Koa and SSR render the data from the server.
ReactDOM[root.innerHTML ? "hydrate" : "render"] in client.tsx

I'm not sure what you mean, exactly.
Static mode, by definition, means that the output being produced includes:

A very bare-bones index.html, used to bootstrap...
main.js
main.css

In this context, there's nothing to hydrate because index.html doesn't contain any rendered React HTML. It contains an empty
 where it will render the client-side React.
If you are foregoing the index.html and using your own backend, this placing your own SSR content inside of
 will have the same affect. However, it would need to match the generated .js exactly, or you'll get errors that the content doesn't match.
If I'm missing the point and you mean something else, please provide some more detail. I'm not clear how you're expecting this to work.

authors: jasonlor leebenson

repo: leebenson/reactql


text:
animation,I need a squirm effect about indicator!

Like this indicator's animation

+1
Would be nice to have.
Any idea how to approach this?

The active indicator is just a component. You should be able to overwrite the component and add slight animation.

this.state.width = 1
this.state.height = 1

<Swiper onScrollBeginDrag=(e) => {
  this.setState({
   width: 123
})
}
<Dot style={{width: this.state.width, height: this.state.height}}

authors: janryWang kfiroo leecade olivierlesnicki

repo: leecade/react-native-swiper


text:
feat. git 작업중 누락되었던 코드 추가

feat. git 작업중 누락되었던 코드 추가

feat. git 작업중 누락되었던 코드 추가