Remove JSON Data plugin for dataframes

Renamed dataframe.hdf5 to dataframe.frame
The reason for this is that the JSON format has some edge cases
that it can't serialize. In addition data types are limited to what
can be serialized to the JSON attributes in the Aiida database
The performance of the HDF5 plugin is a slower by a factor 3 for small
data frames (4 rows x 5 columns) but faster by orders of magnitude for
large dataframes (10000 rows x 52 columns)
Bonus the plugin can now be compatible with AiiDA 1.X :)
Performance benchmark:
Small Dataframe
Storing
df = pd.DataFrame(
    {
        "A": np.random.uniform(0,1,4),
        "B": pd.Timestamp("20130102"),
        "C": pd.Series(1, index=list(range(4)), dtype="float32"),
        "D": np.array([3] * 4, dtype="int32"),
        "E": pd.Categorical(["test", "train", "test", "train"]),
        "F": "foo",
    }
)
plugins.DataFactory("dataframe.frame")(df).store()

JSON: 20.9 ms ± 1.11 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
HDF5: 78.8 ms ± 802 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)
Retrieving
node = orm.QueryBuilder().append(plugins.DataFactory("dataframe.frame")).first()[0]
node.df.head()

JSON: 12.6 ms ± 36 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
HDF5: 40.1 ms ± 274 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)
Large Dataframe
Storing
import string
N = 10000
large_df = pd.DataFrame(
    {
        key: np.random.uniform(0,1,N) for key in string.ascii_letters
    }
)
plugins.DataFactory("dataframe.frame")(large_df).store()

JSON: 16.9 s ± 54.4 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
HDF5: 245 ms ± 6.15 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
Retrieving
Same as above
JSON: 3.02 s ± 15.1 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
HDF5: 43.6 ms ± 569 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)

Codecov Report

Merging #1 (a1aa710) into main (aa2bf65) will decrease coverage by 1.29%.
The diff coverage is 95.12%.

:exclamation: Current head a1aa710 differs from pull request most recent head d1d1edb. Consider uploading reports for the commit d1d1edb to get more accurate results

@@            Coverage Diff             @@
##             main       #1      +/-   ##
==========================================
- Coverage   97.88%   96.59%   -1.30%
==========================================
  Files           5        4       -1
  Lines         142       88      -54
==========================================
- Hits          139       85      -54
  Misses          3        3

Impacted Files
Coverage Δ

aiida_dataframe/data/dataframe.py
95.55% <95.00%> (-4.45%)
:arrow_down:

aiida_dataframe/cli.py
97.50% <100.00%> (-0.07%)
:arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


How to get onnx file of the whole model

Hi, I'm going to transform .pth into .onnx but find provided .pth file only contains weights/bias.
So is it possible for your team to upload .pth file with the whole model (.onnx is more preferred) ?
thanks!

Hi, you can load the provided weight to the model and use torch.save(model, 'net.pth') to get the whole model (including model structure and weights). Please try it out : )

Hi, you can load the provided weight to the model and use torch.save(model, 'net.pth') to get the whole model (including model structure and weights). Please try it out : )

Thank you for the reply.
I want to use .onnx file for visualization of net structure by visualization tool like netro, and .pth seems not to be supported well by neron (the method you supplied above does not work either). And I tried to save the model into .onnx file using torch.onnx.export(), but failed (it seems that the 3rd-party lib like mmdet can not be recognized well ?).
So how can i see the whole structure of VAD using any visualization tools ?

We haven't tried to visualize the model structure of VAD using any visualization tools, maybe like you said, VAD is bulit upon the mmdet environment and it is not friendly for the current visualization tools. Maybe you can try to find a solution by google it and see if others meet similar problems.

We haven't tried to visualize the model structure of VAD using any visualization tools, maybe like you said, VAD is bulit upon the mmdet environment and it is not friendly for the current visualization tools. Maybe you can try to find a solution by google it and see if others meet similar problems.

OK，Thanks a lot~


ServiceConfig add setClassloader api

My framework change classloader load in project class, but ServiceConfig not use my classloader because is not in project, it's in jar. So, i use config ebean.currentUserProvider get user throw class can not case exception.

If you go serverConfig.setClassLoader(...)  why not go serverConfig.setCurrentUserProvider(...) ?
This does not make sense to me.

serverConfig.setClassLoader(...)  can set in framework, get from currentThread

Nope, still not clear.  "get from currentThread" ... what?
Please put some effort into trying to give a meaningful explanation of the
change you desire and how it will be used.
On 3 December 2015 at 21:53, icode<EMAIL_ADDRESS>wrote:

serverConfig.setClassLoader(...) can set in framework, get from
currentThread
—
Reply to this email directly or view it on GitHub
https://github.com/ebean-orm/avaje-ebeanorm/issues/476#issuecomment-161555229
.

In my framework not my app call serverConfig.setClassLoader(Thread.currentThread().getContextClassLoader())

Right.
So no I'm not going to add serverConfig.setClassLoader(...) .... (at least
not yet) because that is not the underlying problem.
On 3 December 2015 at 22:03, icode<EMAIL_ADDRESS>wrote:

In my framework not my app call
serverConfig.setClassLoader(Thread.currentThread().getContextClassLoader())
—
Reply to this email directly or view it on GitHub
https://github.com/ebean-orm/avaje-ebeanorm/issues/476#issuecomment-161557530
.

Now , in my framework can not configure ebean from config file, like play1, change classloader in dev model, so ebean ClassUtils,newInstance get a error class

I understand. It is just that your proposed solution
(serverConfig.setClassLoader(...))  is not a good solution, a better
solution exists.
On 3 December 2015 at 22:15, icode<EMAIL_ADDRESS>wrote:

Now , in my framework can not configure ebean from config file, like
play1, change classloader in dev model, so ebean ClassUtils,newInstance
get a error class
—
Reply to this email directly or view it on GitHub
https://github.com/ebean-orm/avaje-ebeanorm/issues/476#issuecomment-161559512
.

Right so this issue needs a "Reboot" taking it back to the original problem.
Original Problem:
A ClassNotFoundException can occur when the "current class loader" is not the correct classLoader to use when creating instances of CurrentUserProvider / NamingConvention etc.
ServerConfig.createInstance(...) uses ClassUtil.newInstance(...) uses the current classLoader and there is not sufficient flexibility to use other classLoaders or mechanisms.
Potential Fixes / Changes:

Make ServerConfig.createInstance(...) method protected such that it can be overwritten.
Change the current default implementation in ClassUtil / ServerConfig.createInstance(...) such that it checks for a uses Thread.currentThread().getContextClassLoader()
Extract an interface that "provides" instances (for example, that uses a Dependency injection context to provide instances).

Currently I see the suggestion of setting a classLoader on ServerConfig is an option but not the best solution in terms of providing the most flexibility. The start will be to implement the first 2 fixes / changes and then review.

Yeah, you are right. I just to describe the problem. My English is not good, so I can only say so.

No problem.  I have pushed 2 commits that make some methods protected and will use the context classLoader.  If you can build from master you can give it a try.
I'm going to continue to look into the code more with a view to do a bit of cleanup and refactoring.

The last commit there refactored the internals and puts ClassLoadConfig on ServerConfig.  The ClassLoadConfig has most of the classLoader specific functions including detecting types to support (Joda, Java time, Jackson etc) and creating new instances.
Out of the box ClassLoadConfig will try to use the current context classLoader and then fallback to the caller one.  In addition it can be created with an explicit classLoader to use.
So I think this does what we need it to do.  Potentially it could be converted into an interface in time but it might be sufficient as is (with the ability to override methods as desired).


added myself

I have added myself please merge this

Thank you for contributing! This PR is successfully part of Hacktoberfest! 🎊


Add LICENSE file

Add license file for improved usability

@alexTitakoff gentle ping!

Sorry I didn't see it!
I haven't been working on the topic for a long time (

I added your file. Thanks!

if anything, please contact<EMAIL_ADDRESS>: ]
I don't follow github very much, unfortunately


zeroWidthSpace cause strange string on click in formatter (like bolt)

zeroWidthSpace: "" : Doesn't work
zeroWidthSpace:'\u200b', : is OK

Hi @cristianandreon
I don't understand the question.
Currently zeroWidthSpace is "\u200b" util.js#L48

Hi JiHong88
Look in SunEditor/dist/suneditor.min.js : for unknown reason it's set to ""
If you beautify the code (https://beautifier.io/) you see cleary it .. (or just search the set code)

The 2.30.0 version has been updated.
If this issue has not been resolved, please reopen this issue.
Thank you.


Merge funding-options feature

Allow users to use --fund-recipient and --allow-unfunded-recipient flags in the transfer sub-command of distributor tools. Both flags behave in the same manner as they do in the spl-token transfer command.

--fund-recipient - if an address doesn't own an associated token account, the sender will create one (and fund it, this costs a bit of SOL!)
--allow-unfunded-recipient - complete the transaction, even if the recipient has 0 SOL on their balance.

check-before and check-after sub-commands have been adjusted to better account for this use-case.

Any chance you could test this @leafwind ?


Add tests for .count() in the file readers

This PR add integration tests for .count() in file readers parquet, orc, and csv.
The count method in the parquet and orc file readers gets the row number from the metadata instead of scanning the entire file, whereas the csv file reader scans the entire file. I verified this locally by debugging spark plan, and added tests to assert the struct of read schema.
Signed-off-by: thirtiseven<EMAIL_ADDRESS>Fixes #717

Better to investigate the code to guarantee that GPU does not scan the whole data.
It's an aggregation or reduction push-down?
Add assertions for the sub-plan(the improved sub-plan) if we can.

build

Looks good, only some minor suggestions.

@res-life all done, thanks for review!

build

build

build


IOS Release: starting Thread (Null)

HI!
Have issue, when build release version on ios ( debug and android works correctly).
I have typescript in my project and thread.js placed in dist/modules folder.
I add dist/module/thread.jsbundle to xcode project and to ios folder, but error still happend.

Fixed by dragging folder with thread (/dist) from ./ios to xcode file manager (into folder where AppDelegate.h) with "Create folder references".


Allow for fit or contain settings

Thansk for the plugin. I'm using it to display the covers of my book notes. The problem is that because of how the images are, the banner displays a very pixaleted zoom of it. If there was a property that allowed us to choose between filling (the current choice) or fitting.

I can implement this by using:
background-size: contain;
background-repeat: no-repeat;

Hey! I really like your plugin, I've been using it for almost month now. I just have a few suggestions though. Is there a way I can customize the margin between the banner and the content without me needing to go to the css? I wanted to push my content down a little bit for personal preference.
Also I have this issue with the backlink note preview, it shows the banner (which I really like), but I want it to be separated from the contents and not overlay on top of each other like this:

@KaiserLycan your "margin" suggestion was implemented earlier today 🤣, yes I have a time machine:
https://github.com/jparkerweb/pexels-banner/releases/tag/1.4.1
The feature is called "Content Start Position", and you can set global, per folder, and per note inheritance rules for it!

Thanks! I just noticed that I was updated not a minute ago, that's why I edited my original comment 🤣.

@connradolisboa
here you go!!!!!!!!
https://github.com/jparkerweb/pexels-banner/releases/tag/1.5.0
update in Obsidian


Fix variable name 'max_size' to 'min_size' in aabb

Thanks! And congrats for your first merged Godot contribution :tada:


Please add ability to Search for a stored proc by name

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
When using AZ studio it can be difficult to find a stored proc when scrolling thru a list of 100s of procs
Describe the solution or feature you'd like
A clear and concise description of what you want to happen.
It would be great if there would be an option to search for a stored proc within a list of available procs
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Currently there are no available plugins in the market place that would provide a search functionality
Additional context
Add any other context or screenshots about the feature request here.

@devlern
this feature is available in the database dashboard:
you can bring up the dashboard by the 'Manage' item of the database's context menu

in the search box, type: sp:SearchText


Rich Text profile name bug in (reposted by) section - maybe in other places as well

Describe the bug

Details

Platform:

screenshot

@whoisanku
Help us better identify your error.
Because I tested via iOS and web I was unable to reproduce it.
We need more details about the error.

@fabiohcnobre hey sorry. I'm putting up an issue from my mobile GH app so probably my detailed info hasn't gotten there in an issue.
But it seems like accounts with Profile Name which has rich text format (probably called like it) has some issues while displaying on iOS app (not sure on other devices or about web app).
Here is another screenshot while searching such accounts:

Now I have managed to replicate the error.
However, there is something about your special characters.
If you write normally, Maria will adjust it.

Yeah I mean it's not me. But found a bug and thought to create an issue here.

The character from this example that triggers the bug is "꧑". It displays normally on web and after some investigation I suspect this is a bug in React Native (https://github.com/facebook/react-native/issues/29507). There's people working on a PR for it, so this can get solved in their end.

Ah nice! @gabrieleiro re-looking over this & closing this issue now.


show documentation & source size on crate-detail page

The sizes we started collecting in https://github.com/rust-lang/docs.rs/pull/2644
on this page: https://docs.rs/crate/itertools/latest
I could imagine showing just the doc & source size for the latest build, perhaps similar to coverage?

I think it makes more sense to only show it for the last version.

you mean the latest build?
the crate-detail page is version specific, so we would show the size of that version, if available

Ah right, forgot about that. Then sure. Sending a PR.


FillObjectBMI example not working in a Debug build

Hi
Re issue #19 the problem appears to be only when building the example in Debug mode, when building Release it works perfectly.
The POST parameters are available for inspection via request.getParameter in doPost, but something is going wrong after that, so the results aren't shown in bmiresults.view .

Hello Friend.
How are you?
Friend, apparently this problem is occurring only in Windows, in the other platforms it works normally. By the way I reprogrammed the .pro files so that qmake/make generates two versions of the library. One release and one debug. Please test this version.
Note: I will send you an email.
Thank you very much
Herik Lima

Hi, thanks that fixes the issue and I have supplied the feedback. It's really nice having such an easy to use framework that uses C++ so thanks for all your good work!

Hello my friend.
Thank you very much!


How do we know which is the first node to render?

We were thinking of writing a test so see what happens if no node with id 0 is designated.
What should happen in this case? What should we test for?

Maybe default to the zero-index and have the ability to override that passing some sort of baseNode parameter or something like that.

I'm okay with that, by the way. That should be written somewhere, that's all.

This issue has been resolved:
https://github.com/codeforamerica/wand/blob/master/src/js/wand.js#L24-L25


Got nothing after calling wlc_output_schedule_render

I am writing simple testing code to add background image in server code.
void set_background(struct wl_client *client,
	    struct wl_resource *resource,
	    struct wl_resource *output,
	    struct wl_resource *surface)
{
wlc_handle wlc_output = wlc_handle_from_wl_output_resource(output);
wlc_handle wlc_surface = wlc_handle_from_wl_surface_resource(surface);
wlc_output_schedule_render(wlc_output);
}

This code is very silly, but I should have screen painted with this api(I have client code as well). But I didn't get anything, did I miss something?

I don't really get what you are trying to do, but the code you have given does nothing to set the background. wlc_output_schedule_render is used to schedule another repaint after 16ms(or whatever your screen refresh rate is). If you are trying to use this test protocol, then see tests/wl-extension.c, there you can find example of what you need. Basically, you must create your surface and then draw it in output_render_pre hook

What ammen99 said is correct, though the scheduling heuristics for repaint is not simple 16ms (as that would most likely causes stutter etc..). But fact is schedule_render only schedules next frame to be rendered, that is all the views will be painted and render hooks called.
If you want to render something you should do it in the hooks using the available *_render functions or write_pixels.
https://github.com/Cloudef/wlc/blob/master/tests/wl-extension.c You can look at this example which does exactly what you want. You can also look at sway's code which implements desktop-shell for backgrounds and others.

So can I just get background painted with wlc_surface_render directly in *_set_background?
I found that did work either.
Does wlc_surface_render call has to be used in specific context?

wlc_surface_render needs to be used in render hooks, you can't do it directly in _set_background. You can however convert surface to wlc_view if that's what you want.

thanks


add backend support for Article voting

Hi,
This patch introduces backend support for up/down voting an Article.
I don't expect it to be merged as is but my intent is to start a conversation on the design decisions and gauge interest for up/down voting.
thanks

Why not? Any additional features is 1+

Any additional features is 1+
Sounds like Linux settings panel. :-)
I'd add; if it serves a purpose for a general purpose boilerplate.

Added some comments. As a whole it seems like you are keeping track of direction. Why not just keep track of the number itself, i.e. 5, -6, 8. So the model would have:
votes: {
  type: Number,
  default: 0
}

Also, why not just check if req.user is defined and avoid having to keep track of userId. Then you would just pass the article and up/down, and then do article.update({ $inc: { votes: direction === 'up' ? 1 : -1 }}, {}, callback);?

@ilanbiala , note that this patch does not accumulate the total votes for an Article, the accumulation would be a follow on patch.  You are correct, the userId in the route is superfluous and req.user should be used.  The vote direction could indeed be a [-1|0|1] instead of a string.
In my mind the very first step is to record a Users vote somewhere, i.e. the User Id, Article Id, Direction triple.  This patch accomplishes this by adding a nested Document to the User model.  I am not convinced that this is the best solution and I think this is the first critical design decision.  What do you guys think?

Why make a followup PR? This is all 1 feature (voting), so it should be encompassed in one PR. I would skip directly to counting votes on the article, because that's what more people probably want. Obviously the user needs to know which articles he has voted on, I think the array of voted article IDs and direction is probably the best in terms of MongoDB implementations.

Sure, I can roll Article vote totals and vote recording into a single PR.  However, I would like to agree on the model changes.
It sounds like you are okay with the current vote recording design? That is an array of Article IDs and direction added to the User model.
For the Articles model, the following would need to be added to support totals:
upVotes: {
  type: Number,
  default: 0
},
downVotes: {
  type: Number,
  default: 0
}

Let me know if this sounds reasonable.
thanks

Why do we need to keep track of the votes separately in the article model itself? Why not just have a votes property and increment or decrement it from 0?

I am assuming you are asking why have upVotes and downVotes as opposed to just votes on the Article model?
In my mind the single vote property would not reflect the number of votes which took place, which is an important dimension.  I am very used to seeing Thumbs Up and Thumbs Down Icons with counts next to them. e.g. youtube
I think a single vote count would work but it's just not as flexible as two distinct fields.  Albeit, the state transitions will be more complicated.

PR updated to record up/down vote count totals on Articles as well as record votes.
Hopefully the spacing issues have been taken care of.
@ilanbiala , I have not changed the error codes and need a little more info as to what they should be.
thanks

PR updated with:

hopefully last spacing fix
id comparison changed to use .toString()

Other than the HTTP code, it looks good. @lirantal what do you think?

@ilanbiala I'm all up for it.
@ppotoplyak any chance on adding some companion tests for the voting?

@lirantal absolutely, latest PR adds app/tests/user.votes.routes.test.js
There are 11 tests:

should not be able to vote if not logged in
should not be able to vote if direction is invalid
3-11) test all 9 possible two vote sequences and verify return values & Article vote counts

I tried using an existing file but the beforeEach clauses did not seem compatible.  This is my first time using SuperTest, Should.js, and Mocha so please forgive any rookie mistakes.
@ilanbiala return code changed to 500, I could not find anything more fitting.  Let me know if I introduced any more spacing issues.  Are you doing a visual check or using a style checker?
thanks

Looks ok, thanks.
@ilanbiala I'm ok with merging.

@ppotoplyak one last change, but this PR should actually be against the 0.4.0 branch and not against master. Can you create a new one and I'll merge that one in?

Does this really need to be implemented into the User model? It seems that the most common use case would be to use this voting feature in the context of an Article.
What I mean by this is that the relevancy of the article vote makes more sense when interacting with the actual Article model itself.
If we want to keep track of the User's that have voted, then just track that in the Article model. I'm not a fan of this feature separating the up & down votes. Shouldn't this be a cumulative value?
This is my proposal for the Article model implementation...
votes: [{
    user: {
        type: Schema.ObjectId,
        ref: 'User'
    },
    value: {
        type: Number,
        default: 0
    }
}]

We could add date fields to this schema as well. What worries me about this pull request is that it seems very specific to one use case, and there's unnecessary updates to the User model, and User server controller. My proposal keeps things simple, and can be modified to meet individual needs.

I will close this one since we already have another PR for 0.4.0 that is waiting @ppotoplyak feedback for some adjustments before merging.


Proper Gradle Task Order?

Is there a document on what the proper order is to run these gradle tasks?

copyAppDependencies
deployApp
embedApplicationManifest
generateApplicationManifest
generateNativeInstaller

Here is what I'm hoping this will allow me to do:

Build my project
Create Native version
Deploy the native versions to users
Auto update the version that the users have without having to send them a new version.

I also ran into an issue running the deployApp on my Mac it fails with a -1 status on the scp.
Instead I ran this manually and it seemed to work for me, but I don't see any native applications:
scp -r build/fxlauncher/. myuser@myserver.home.com:fxldemo
Thank you for your help.

The tasks have dependencies on each other, so you can just run the one you want, and it will call the others first. So to generate a native installer, just call generateNativeInstaller.
You'd typically only do this once, and then later you just run deployApp to push a new version.
The installer should be built into build/installer/bundles/app-name. If it's not there after running generateNativeInstaller you should have an error message in your console hinting to the problem.
Does this help? If not, can you post your app somewhere so I can take a look?

Ok, I do now see the native installer is created.  Does the native version auto update also or just the jar based one that is pushed out with deployApp ?

No problem :) The native version never updates, as it is really just a shell for starting fxlauncher. There is only a need to update the native installer if you change the fxlauncher version or change the installer icons etc. We currently have no support for updating the installed .exe, but we're going to address this in version 2.0.

Ok so the native version is just like running the fxlauncher with a url so it downloads and runs the latest version all the time based on the latest on the deployedApp target?  If correct I wouldn't need to update the exe, dmg, etc... since it would just get the latest from the server.
Any reason the native version is so large compared to the native one I built with the standard javafx native build tools?

That's correct. javapackager includes the JRE in the generated installer on all platforms. You can of course just distribute the launcher itself, but that defeats the purpose of being able to distribute a fully self contained application. FXLauncher doesn't augment the generated installer in any way so it would be the exact same size as running javapackager manually.

Ok, thank you for your help.
In regards to the scp functionality I found your plugin source and added the -v parameter to it and it helped me to figure out the deployApp and get it working.  Maybe it can be an option to pass in some other scp parameters or just a true/false option to turn verbose on when running the deployApp task?

That sounds like a good idea. Preferably we'd use an ssh/scp library so we don't need to depend on any locally installed software as well, but we could for sure add scpOptions or something similar for now.

I just added the scpOptions parameter :)

Thank you, I have the native one running but the "Updating..." dialog never goes away but the application is running.

The updating stage is listening for the primaryStage to open, so it won't go away until you actually show the primary stage passed to your app. If you don't want to show something right away you should be able to just show and immediately hide the primary stage. Let me know if that doesn't work for you.
We can add an option to close the updating dialog once the update is complete and your app starts to launch. Actually I think this might be a good default as well. I'll look into this for 1.0.15.

I like the idea of closing it once it's complete as a default.

Great. We'll discuss if this should be the default or if we should just add an option for it. Let's leave this issue open until it's implemented :)

FXLauncher 1.0.15 has been released with this new behavior as default. If you want to keep the update screen around until the primary stage is shown you must now specify lingeringUpdateScreen=true.


Chapter 3/Homework 4

My first try on this homework.
My understanding is that ISchool has both in and outputs so no in or out?
ITeacher has only output so this should have out?

My first try on this homework.
My understanding is that ISchool has both in and outputs so no in or out?
ITeacher has only output so this should have out?

Yes, that is correct.


bypy info 一直授权失败，linux服务器上和windows本地都不行，之前没有使用过，没有进行过授权；并且按照给的建议到百度网站上移除授权，重新授权，试了一下午也没有解决。

Please visit:
https://openapi.baidu.com/oauth/2.0/authorize?client_id=q8WE4EpCsau1oS0MplgMKNBn&response_type=code&redirect_uri=oob&scope=basic+netdisk
And authorize this app
Paste the Authorization Code here within 10 minutes.
Press [Enter] when you are done
xxxxxxxxxxxxxxxxxxx
Authorizing, please be patient, it may take upto 300 seconds...
Authorizing with the Vercel server ...
Vercel server failed, Authorizing with the cloudendpoint server ...
Vercel server failed. Last resort: authorizing with the Aliyun server ...
[19:45:27] Fatal: All server authorizations failed.
 [19:45:27] ----------------------------------------------------------------
 [19:45:27] This is most likely caused by authorization errors.
Possible causes:

You didn't run this program for a long time (more than a month).
You changed your Baidu password after authorizing this program.
You didn't give this program the 'netdisk' access while authorizing.
...
Possible fixes:

Remove the authorization token by running with the parameter '-c', and then re-run this program.
If (1) still doesn't solve the problem, you may have to go to:
https://passport.baidu.com/accountbind
and remove the authorization of this program, and then re-run this program.

bypy.py info -dv之后会输出这些内容，麻烦帮忙看一下
 Auth servers loaded: {'AuthServerList': [['https://bypyoa.vercel.app/api/auth', False, 'Authorizing with the Vercel server ...'], ['https://qcfpba.api.cloudendpoint.cn/auth', False, 'Vercel server failed, Authorizing with the cloudendpoint server ...'], ['https://<IP_ADDRESS>/auth', False, 'Vercel server failed.  Last resort: refreshing with the Aliyun server ...']]}
 [19:53:14] Using requests.packages.urllib3 to disable warnings
 [19:53:14] Using urllib3 to disable warnings
Loading Hash Cache File '/home/wang/.bypy/bypy.hashcache.json'...
Hash Cache File '/home/wang/.bypy/bypy.hashcache.json' not found, no caching
Verbose level = 1
Debug level = 1
Config directory: '/home/wang/.bypy'
Token file: '/home/wang/.bypy/bypy.json'
Hash Cache file: '/home/wang/.bypy/bypy.hashcache.json'
App root path at Baidu Yun '/apps/bypy'
sys.stdin.encoding = utf-8
sys.stdout.encoding = utf-8
sys.stderr.encoding = utf-8
 Error while loading baidu pcs token.
Exception:
<class 'FileNotFoundError'> - [Errno 2] No such file or directory: '/home/wang/.bypy/bypy.json'
Stack:
File "/usr/local/bin/bypy", line 8, in
sys.exit(main())
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 3815, in main
by = ByPy(**bypyopt)
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 466, in init
if not self.__load_local_json():
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 941, in __load_local_json
self.pd("Error while loading baidu pcs token.\n{}".format(formatex(ex)))
File "/usr/local/lib/python3.8/site-packages/bypy/util.py", line 73, in formatex
type(ex), ex, ''.join(traceback.format_stack()))

Please visit:
https://openapi.baidu.com/oauth/2.0/authorize?client_id=q8WE4EpCsau1oS0MplgMKNBn&response_type=code&redirect_uri=oob&scope=basic+netdisk
And authorize this app
Paste the Authorization Code here within 10 minutes.
Press [Enter] when you are done
xxxxxxxxxxxxxxxxxxx
 auth_code: daa5ee2d079e8016e999e33df3eea461
Authorizing, please be patient, it may take upto 300 seconds...
 Auth servers updated: {'AuthServerList': [['https://bypyoa.vercel.app/api/auth', False, 'Authorizing with the Vercel server ...'], ['https://qcfpba.api.cloudendpoint.cn/auth', False, 'Vercel server failed, Authorizing with the cloudendpoint server ...'], ['https://<IP_ADDRESS>/auth', False, 'Vercel server failed.  Last resort: refreshing with the Aliyun server ...']]}
Authorizing with the Vercel server ...
 GET https://bypyoa.vercel.app/api/auth
 actargs: None
 Params: {'code': 'daa5ee2d079e8016e999e33df3eea461', 'bypy_version': '1.7.12', 'redirect_uri': 'oob'}
 [19:56:12] Error accessing 'https://bypyoa.vercel.app/api/auth'
 [19:56:12] Exception:
<class 'requests.exceptions.ConnectionError'> - HTTPSConnectionPool(host='bypyoa.vercel.app', port=443): Max retries exceeded with url: /api/auth?code=daa5ee2d079e8016e999e33df3eea461&bypy_version=1.7.12&redirect_uri=oob (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7fe71c212700>: Failed to establish a new connection: [Errno 101] Network is unreachable'))
Stack:
File "/usr/local/bin/bypy", line 8, in
sys.exit(main())
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 3815, in main
by = ByPy(**bypyopt)
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 468, in init
result = self.__auth()
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 1052, in __auth
result = self.__get(url, pars, self.__server_auth_act, retry = retry, addtoken = False)
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 882, in __get
return self.__request(url, pars, act, 'GET', actargs, retry, addtoken, dumpex, **kwargs)
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 860, in __request
result = self.__request_work(url, pars, act, method, actargs, addtoken, dumpex, **kwnew)
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 812, in __request_work
self.__dump_exception(ex, url, pars, r, act)
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 615, in __dump_exception
perr(formatex(ex))
File "/usr/local/lib/python3.8/site-packages/bypy/util.py", line 73, in formatex
type(ex), ex, ''.join(traceback.format_stack()))
 [19:56:12] Function: __server_auth_act
 [19:56:12] Website parameters: {'code': 'daa5ee2d079e8016e999e33df3eea461', 'bypy_version': '1.7.12', 'redirect_uri': 'oob'}
 [19:56:12] Maximum number (1) of tries failed.
Vercel server failed, Authorizing with the cloudendpoint server ...
 GET https://qcfpba.api.cloudendpoint.cn/auth
 actargs: None
 Params: {'code': 'daa5ee2d079e8016e999e33df3eea461', 'bypy_version': '1.7.12', 'redirect_uri': 'oob'}
 Full URL: https://qcfpba.api.cloudendpoint.cn/auth?code=daa5ee2d079e8016e999e33df3eea461&bypy_version=1.7.12&redirect_uri=oob
 HTTP Status Code: 503
 Website returned JSON: {'errorCode': '503SS', 'errorMessage': 'Service Unavailable'}
 [19:56:12] Error accessing 'https://qcfpba.api.cloudendpoint.cn/auth'
 [19:56:12]
 [19:56:12] Function: __server_auth_act
 [19:56:12] Website parameters: {'code': 'daa5ee2d079e8016e999e33df3eea461', 'bypy_version': '1.7.12', 'redirect_uri': 'oob'}
 [19:56:12] Full URL: https://qcfpba.api.cloudendpoint.cn/auth?code=daa5ee2d079e8016e999e33df3eea461&bypy_version=1.7.12&redirect_uri=oob
 [19:56:12] HTTP Response Status Code: 503
 [19:56:12] Website returned: {"errorCode":"503SS","errorMessage":"Service Unavailable"}
 [19:56:12] Maximum number (1) of tries failed.
Vercel server failed. Last resort: authorizing with the Aliyun server ...
 GET https://<IP_ADDRESS>/auth
 actargs: None
 Params: {'code': 'daa5ee2d079e8016e999e33df3eea461', 'bypy_version': '1.7.12', 'redirect_uri': 'oob'}
 [19:56:19] Error accessing 'https://<IP_ADDRESS>/auth'
 [19:56:19] Exception:
<class 'requests.exceptions.ConnectionError'> - HTTPSConnectionPool(host='<IP_ADDRESS>', port=443): Max retries exceeded with url: /auth?code=daa5ee2d079e8016e999e33df3eea461&bypy_version=1.7.12&redirect_uri=oob (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7fe71c1aca00>: Failed to establish a new connection: [Errno 110] Connection timed out'))
Stack:
File "/usr/local/bin/bypy", line 8, in
sys.exit(main())
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 3815, in main
by = ByPy(**bypyopt)
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 468, in init
result = self.__auth()
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 1052, in __auth
result = self.__get(url, pars, self.__server_auth_act, retry = retry, addtoken = False)
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 882, in __get
return self.__request(url, pars, act, 'GET', actargs, retry, addtoken, dumpex, **kwargs)
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 860, in __request
result = self.__request_work(url, pars, act, method, actargs, addtoken, dumpex, **kwnew)
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 812, in __request_work
self.__dump_exception(ex, url, pars, r, act)
File "/usr/local/lib/python3.8/site-packages/bypy/bypy.py", line 615, in __dump_exception
perr(formatex(ex))
File "/usr/local/lib/python3.8/site-packages/bypy/util.py", line 73, in formatex
type(ex), ex, ''.join(traceback.format_stack()))
 [19:56:19] Function: __server_auth_act
 [19:56:19] Website parameters: {'code': 'daa5ee2d079e8016e999e33df3eea461', 'bypy_version': '1.7.12', 'redirect_uri': 'oob'}
 [19:56:19] Maximum number (1) of tries failed.
 [19:56:19] Fatal: All server authorizations failed.
 [19:56:19] ----------------------------------------------------------------
 [19:56:19] This is most likely caused by authorization errors.
Possible causes:

You didn't run this program for a long time (more than a month).
You changed your Baidu password after authorizing this program.
You didn't give this program the 'netdisk' access while authorizing.
...
Possible fixes:

Remove the authorization token by running with the parameter '-c', and then re-run this program.
If (1) still doesn't solve the problem, you may have to go to:
https://passport.baidu.com/accountbind
and remove the authorization of this program, and then re-run this program.
Skip saving Hash Cache since it has not been updated.

我测了一下三台服务器的接口，第一台错误码500， 第二台Service Unavailable， 第三台直接访问不到了，希望可以帮忙看一下，没有secretId真的好难搞，我见代码里面secretId是直接写到环境变量里面了，这个值未知的怎么export进去，可以私聊单发一下么，感谢

我同样遇到这个问题，我觉得是服务器崩了，希望作者能搭回去

我也遇到同样的问题，试了两台电脑都一样，估计授权服务器被qiang了

可以试试这个 https://blog.csdn.net/qq_39546227/article/details/126603750

同样的问题，另外如果是楼上的方案，还是要走验证服务器的，部署验证服务器之后提示{"error_code": 150, "error_msg": "ERROR: Auth failed, please retry.\nHTTP status code: 400\nDetails: Baidu returned:\nb'{"error":"invalid_client","error_description":"Invalid client_id"}

我自己试的没什么问题呀

不太清楚，暂时先用另一个替代了：elixonmars/BaiduPCS-Go

谢谢反馈。最新版1.8应该不会有这个问题了。
之前加了三个服务器，结果字节的服务关停了，阿里的重刷过系统没运行服务，而以前挺稳定的Vercel貌似最近被墙了。。
这次应该算是一次解决这个问题了。


Adds timestamps

Adds the 2 timestamps created_at and updated_at in the settings table

Hello and sorry for not responding to this! I was very busy and then simply forgot.
I'm not sure if it's a good idea to include these columns by default, but I definitely think it should be possible with customization. I'd be willing to merge this if you

make the column settings null by default
don't set the columns if they are set to null
remove from the default migration

I also like making load public with a $force argument, that's a great idea!
Are you OK with making these changes? If not I could try to continue your work when I have time.

Hi @pratikkapasi any update on PR?

Hi @bweston92, sorry was offline for quite some time, so could not get back. I shall make the changes and update the PR soon.

@pratikkapasi no need to be sorry :D take your time, just was wanting to know if it was dead or not.

There is some conflicts with master which will need resolving too.


Crash when calling cloud function with no network

Goals
Call a MongoDb function using RealmSDK on iOS, when there is no WiFi (Network)
Expected Results
Error callback to be called
Actual Results
Crash happens
Trace:
Task <203EE52A-B9CC-417A-900E-95F6F00000CE>.<1> finished with error [-1009] Error Domain=NSURLErrorDomain Code=-1009 "The Internet connection appears to be offline." UserInfo={_kCFStreamErrorCodeKey=50, NSUnderlyingError=0x6000010640f0 {Error Domain=kCFErrorDomainCFNetwork Code=-1009 "(null)" UserInfo={_kCFStreamErrorCodeKey=50, _kCFStreamErrorDomainKey=1}},
_NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <203EE52A-B9CC-417A-900E-95F6F00000CE>.<1>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
    "LocalDataTask <203EE52A-B9CC-417A-900E-95F6F00000CE>.<1>"
), NSLocalizedDescription=The Internet connection appears to be offline.,
NSErrorFailingURLStringKey=https://realm.mongodb.com/api/client/v2.0/app/[APP ID]/functions/call, NSErrorFailingURLKey=https://realm.mongodb.com/api/client/v2.0/app/[APP ID]/functions/call, _kCFStreamErrorDomainKey=1}

libc++abi.dylib: terminating with uncaught exception of type nlohmann::detail::parse_error: [json.exception.parse_error.101] parse error at line 1, column 1: syntax error while parsing value - invalid literal; last read: 'T'
terminating with uncaught exception of type nlohmann::detail::parse_error: [json.exception.parse_error.101] parse error at line 1, column 1: syntax error while parsing value - invalid literal; last read: 'T'
CoreSimulator 7<IP_ADDRESS> - Device: iPhone 11 Pro () - Runtime: iOS 14.2 (18B79) - DeviceType: iPhone 11 Pro

Steps for others to Reproduce
Turn off the Wifi and call a cloud function
Code Sample
user.functions.sum([1, 2]) { sum, error in
     guard error == nil else {
        print("Function call failed: \(error!.localizedDescription)")
         return
     }
}

// or
user.refreshCustomData { }

Version of Realm and Tooling
Realm 10.4.0

Hey @georgesjamous,
This is a known issue and has been fixed in the latest Core release v10.3.3. We'll conduct a release for Cocoa soon that will contain this fix.

Hey @georgesjamous,
This is a known issue and has been fixed in the latest Core release v10.3.3. We'll conduct a release for Cocoa soon that will contain this fix.

Alright, @jsflax thanks.
I am gonna keep this issue open for tracking and in case someone else ran into the same issue on Cocoa.
Otherwise, feel free to close it.

Alright, @jsflax thanks.
I am gonna keep this issue open for tracking and in case someone else ran into the same issue on Cocoa.
Otherwise, feel free to close it.

@georgesjamous I've also done some testing without network and can confirm this does not happen in v10.5.1 anymore.
Going to close this for now. If you still run into this issue with v10.5.1+ please feel free to re-open the issue.

@georgesjamous I've also done some testing without network and can confirm this does not happen in v10.5.1 anymore.
Going to close this for now. If you still run into this issue with v10.5.1+ please feel free to re-open the issue.


InMemory provider DateTime precision seems very low

In some of my test cases I'm inserting two records into a table and in both cases setting a DateTime column with DateTime.UtcNow.
But every now and then when I do values.OrderByDescending(row => row.DateTimeColumn).FirstOrDefault() it picks the 1st row rather than the 2nd.
I was able to resolve it by forcing a millisecond delay between adding the two rows, but surely the precision of DateTime should be smaller than a millisecond?
Only happens using InMemory provider, not in production.
Further technical details
EF Core version: 2.2
Database provider: Microsoft.EntityFrameworkCore.InMemory.
Target framework: (e.g. .NET Core 2.2)
Operating system: Windows 10
IDE: (e.g. Visual Studio 2019 16.4)

Update: some additional info. The DateTime.UtcNow was being serialized into JSON and back again before being inserted into the database. But that still definitely has way less than sub-millisecond precision.  TBH I'm having a very hard time trying to reproduce it with a much simpler test.

This can be closed, turned out the DateTime was getting rounded to the nearest second when written to the database.


Default shader doesn't work with my AMD card

After about an hour of changing the shader with eatplayhate, we finally found out that my good old AMD Radeon 6670 HD doesn't work if you try to get the texture from the array if you use a variable as the index.
So we had to use the shader you wrote for SPARKY_WEB (which has a lot of if statements to check which texture to use) and add +0.5f on lines 154,163 and 210 in BatchRenderer2D.

Nevermind duplicate of #41. Should be addressed though


[FIX] raise on dead socket

Previously, errors produced on consuming tokens from a closed IO were swallowed, potentially leading to silent failures.

LGTM

LGTM


rp2.county() code presumed to be 'GB'

Code should allow for country override - as this may be interfering with the ability to connect to local WiFi outside of England.
https://github.com/pimoroni/phew/blob/a21bc19fe817840589f63246d9bf3e31f378d7e1/phew/__init__.py#L25
Reference setting rp2.country() to local country for WiFi help here:
https://datasheets.raspberrypi.com/picow/connecting-to-the-internet-with-pico-w.pdf
section 3.6.2

I use html code when in AP mode to make changes and storing them in a json file.


Error occurred while transfer sol

An error occureed when I was trying to transfer sol to another pub address using the wallet simple.

the error said this is null

but I checked it is not.

@devzhuchuanbo this issue is solved in #7 . Thanks for reporting it!


Adding new options

Description
Adding new options to the visualization:

pctMode: How the percentages are going to be calculated.
backgroundColor: hex color to set in the background.
titleColor: hex color to set for all the title stages in the funnel.
labelColor: hex color to set for all the value labels in the funnel.
percentageColor: hex color to set for all the percentage labels in the funnel.

Sorry for the delay - I'll check it out - thank you


Need a (better) way of tracking how the solution of a model evolves

One thing I am often interested in is how the solution of a model changes when I add constraints/change subsitutions/use different sub-models etc.
My current way of tracking this is to create a .sol that I update and commit each time I make a change  (and a git pre-commit hook ensures I don't forget to update the .sol each time I commit). git diff then allows me to see what has changed, and by how much.
This method is somewhat rudimentary and definitely not perfect. It would be nice to have something that does this more elegantly, and had other features, for example showing percentage changes of each variable, and even ranking the variables by percentage change. I think a git-centric solution might be the way to do it, but I am open to other suggestions.

Great! This is a great way of describing it. Another issue on the same topic is #829, so I'll move your comment there.

Reopened because this is specifically about comparing solutions.


how to print text inside circle

how to print text and fa-fa icons inside circle .

Hi, @stardust01!
There're numerous ways how to do it. For example:

.circle {
  width: 100px;
  position: relative;
}

.circle .value {
  position: absolute;
  top: 30px;
  left: 0;
  width: 100%;
  text-align: center;
  line-height: 40px;
  font-size: 30px;
}

$('.circle').circleProgress({
  value: 0.75,
}).on('circle-animation-progress', function(event, progress, stepValue) {
  $(this).children('.value').text(stepValue.toFixed(2));
});

@stardust01 - also see the demo site, there's an example of what you're looking for.

I hope I've helped you. I'm closing this ticket, but feel free to reopen.

thank you
On Tue, Dec 26, 2017 at 7:31 AM, Rostyslav Bryzgunov <
<EMAIL_ADDRESS>wrote:

Closed #175
https://github.com/kottenator/jquery-circle-progress/issues/175.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kottenator/jquery-circle-progress/issues/175#event-1401219603,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AZiQnnr0yFwir3J1x6Pr4rbzo528y8VTks5tEFNygaJpZM4Q0jE5
.


use travis addons

Codecov Report

Merging #1583 into master will decrease coverage by 1.92%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1583      +/-   ##
==========================================
- Coverage   60.31%   58.39%   -1.92%
==========================================
  Files         218      218
  Lines       11843    10386    -1457
==========================================
- Hits         7142     6064    -1078
+ Misses       3941     3582     -359
+ Partials      760      740      -20

Impacted Files
Coverage Δ

internal/backend/crypto/xc/import.go
33.33% <0.00%> (-16.67%)
:arrow_down:

pkg/pwgen/pwrules/change.go
12.50% <0.00%> (-12.50%)
:arrow_down:

internal/backend/storage/ondisk/gjs/revision.go
42.11% <0.00%> (-11.74%)
:arrow_down:

internal/clipboard/kill_ps.go
60.00% <0.00%> (-11.43%)
:arrow_down:

internal/termio/identity.go
62.50% <0.00%> (-10.23%)
:arrow_down:

internal/backend/crypto/xc/askpass.go
29.17% <0.00%> (-10.12%)
:arrow_down:

internal/store/root/crypto.go
40.00% <0.00%> (-10.00%)
:arrow_down:

internal/backend/crypto/gpg/cli/key.go
50.00% <0.00%> (-10.00%)
:arrow_down:

internal/tpl/funcs.go
46.94% <0.00%> (-8.99%)
:arrow_down:

internal/store/leaf/templates.go
54.72% <0.00%> (-8.36%)
:arrow_down:

... and 208 more

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 9ff06fb...e25772c. Read the comment docs.

Thanks, this looks good. If you could sign off your commits with git commit -s and add a RELEASE_NOTES tag we'd be ready to merge it I guess.

@dominikschulz there's still an error on osx that i'm trying to debug, i'll make sure to squash and sign the commit, add a RELEASE_NOTES tag, and mark the PR as ready when it all gets worked out

We moved to Github actions now.

We moved to Github actions now.

Codecov Report

Merging #1583 (52b5333) into master (9ff06fb) will decrease coverage by 2.59%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1583      +/-   ##
==========================================
- Coverage   60.31%   57.72%   -2.59%
==========================================
  Files         218      204      -14
  Lines       11843     9836    -2007
==========================================
- Hits         7142     5677    -1465
+ Misses       3941     3490     -451
+ Partials      760      669      -91

Impacted Files
Coverage Δ

internal/backend/crypto/gpg/cli/version.go
16.67% <0.00%> (-54.17%)
:arrow_down:

internal/backend/crypto/gpg/cli/binary.go
31.25% <0.00%> (-37.64%)
:arrow_down:

pkg/pwgen/pwrules/change.go
12.50% <0.00%> (-12.50%)
:arrow_down:

internal/backend/storage/ondisk/gjs/revision.go
42.11% <0.00%> (-11.74%)
:arrow_down:

internal/clipboard/kill_ps.go
60.00% <0.00%> (-11.43%)
:arrow_down:

internal/termio/identity.go
62.50% <0.00%> (-10.23%)
:arrow_down:

internal/store/root/crypto.go
40.00% <0.00%> (-10.00%)
:arrow_down:

internal/backend/crypto/gpg/cli/key.go
50.00% <0.00%> (-10.00%)
:arrow_down:

internal/tpl/funcs.go
46.94% <0.00%> (-8.99%)
:arrow_down:

internal/store/leaf/templates.go
54.72% <0.00%> (-8.36%)
:arrow_down:

... and 208 more

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 9ff06fb...7f906f0. Read the comment docs.

Codecov Report

Merging #1583 (52b5333) into master (9ff06fb) will decrease coverage by 2.59%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1583      +/-   ##
==========================================
- Coverage   60.31%   57.72%   -2.59%
==========================================
  Files         218      204      -14
  Lines       11843     9836    -2007
==========================================
- Hits         7142     5677    -1465
+ Misses       3941     3490     -451
+ Partials      760      669      -91

Impacted Files
Coverage Δ

internal/backend/crypto/gpg/cli/version.go
16.67% <0.00%> (-54.17%)
:arrow_down:

internal/backend/crypto/gpg/cli/binary.go
31.25% <0.00%> (-37.64%)
:arrow_down:

pkg/pwgen/pwrules/change.go
12.50% <0.00%> (-12.50%)
:arrow_down:

internal/backend/storage/ondisk/gjs/revision.go
42.11% <0.00%> (-11.74%)
:arrow_down:

internal/clipboard/kill_ps.go
60.00% <0.00%> (-11.43%)
:arrow_down:

internal/termio/identity.go
62.50% <0.00%> (-10.23%)
:arrow_down:

internal/store/root/crypto.go
40.00% <0.00%> (-10.00%)
:arrow_down:

internal/backend/crypto/gpg/cli/key.go
50.00% <0.00%> (-10.00%)
:arrow_down:

internal/tpl/funcs.go
46.94% <0.00%> (-8.99%)
:arrow_down:

internal/store/leaf/templates.go
54.72% <0.00%> (-8.36%)
:arrow_down:

... and 208 more

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 9ff06fb...7f906f0. Read the comment docs.


Ability to set a breakpoint on a line of code in a source file

Gallium supports setting breakpoints on specific lines in julia source files. It'd be super nifty (and match behavior of most debuggers) to be able to right click on a specific line and set a Gallium breakpoint.

It should be enabled already if Gallium actually its release. The issue has been that this is waiting on Gallium's release.
https://github.com/Keno/Gallium.jl/issues/187

Setting them should work with the latest Gallium release anyways, but removing them doesn't. You should be able to set a breakpoint via Alt-X, but an entry in the context menu would be cool too.


[Feature Request]: Use Pydantic models for llm_configs and config_list

Is your feature request related to a problem? Please describe.
Right now, config_list and llm_configs are dictionaries, and the schema of these dictionaries are enforced through parser functions.
Describe the solution you'd like
A better way to handle this would be to use Pydantic models so parsing, serializing and data validations are handled by Pydantic. This also address many issues related to invalid configs.
Additional context
Pydantic
Example of Pydantic models already used in our repo: https://github.com/microsoft/autogen/blob/main/autogen/function_utils.py
Existing issues to address data validation:
https://github.com/microsoft/autogen/pull/1082
https://github.com/microsoft/autogen/pull/1026
https://github.com/microsoft/autogen/issues/1074

Arguably I would add code_execution_config to that as well.


"readable"-event and read()-function?

Why is the "readable"-event not usable and why is there no read()-function?

Request is yet to be ported to Streams2, so no such functions in here.


Photoshop windows open maximised

Environment
Windows build number: Microsoft Windows [Version 10.0.18362.418]
PowerToys version: 0.11.0
PowerToy module for which you are reporting the bug (if applicable): FancyZones

Steps to reproduce
If i use Photoshop and snap it into a zone, Photoshop will stay in its fancy zone. The same apply's to files I open in Photoshop. For example when I open a small 100 by 100 pixel file, it will snap to the entire zone. This is very annoying when opening multiple Photoshop files at once.
It does not happen on the new document
Expected behavior
When opening a file of 100 by 100 pixels via the 'open' function. It should open in a 100 by 100 pixels window
Actual behavior
When opening a file of 100 by 100 it will snap to the entire zone photoshop is in.
Screenshots

Hi @Robin-Renkema
have you tried to turn off the FancyZones setting Move newly created windows to their last known zone?
Let me know if that helps.
Thank you.

This solves the problem with photoshop yes, but it (obviously) disables it for all my other programs. I do like my windows to snap to their last know zone.
I think my best bet it to not snap photoshop to a zone and leave the function on

@Robin-Renkema
this is definitely a bug and we should fix it, thank you for reporting it.

Hi @Robin-Renkema
can you check if this is still broken in 0.14.1 https://github.com/microsoft/PowerToys/releases/tag/v0.14.1 ?
Thank you.

Installed and tested it by snapping Photoshop to a zone and opening a file. The file opens normally and does not snap to the entire Photoshop window/zone. So it seems fixed! Thanks alot.

@Robin-Renkema
thanks for testing!
I'm closing this as resolved.


Wrong architecture for gitui on osx

Describe the bug
If I run this:
zinit ice from"gh-r" as"program"
zinit load extrawurst/gitui

It downloads the linux binaries on my mac, instead of the mac binaries.

$ print $CPUTYPE $MACHTYPE
x86_64 x86_64

Expected behavior
I would like the mac binaries to be loaded
Versions:

$ZSH_VERSION == 5.7.1
Operating system name and version (uname -a): Darwin USERNAME 19.5.0 Darwin Kernel Version 19.5.0: Tue May 26 20:41:44 PDT 2020; root:xnu-6153.121.2~2/RELEASE_X86_64 x86_64

It is fixed, thanks.


az acr credential show should also display login server

When working with Azure Container Registry and you enabled the admin user, the portal will then display the login server and the admin credentials on the one blade.
From CLI, az acr show will return the loginServer, but not credentials. Cool. az acr credential show for a given registry will then show the credentials you need. But, it would be helpful if az acr credential show would also display the loginServer.
You have to specify a resource group and registry, so that login server should be valid for all the accounts that would potentially be granted access, unless I'm missing something? Having to do both az acr show and az acr credential show to be able to then docker login seem likes one more step than it should be.

+1

Additionally, I'd almost be interested to see az acr create command return the admin username and password when you specify the --admin-enabled flag. That way, you don't need to create the instance, and then immediately turn around to grab the generated credentials.

We are actually planning to even remove username from get credential result and be consistent with az storage account show and az storage account keys list. This is worth discussing though as it can potentially improve usability. @SajayAntony

Given the current work of enabling repo based tokens going forward, we will first class credentials in that scenario. Might be worth considering closing this since there is not planned action on this.


Add crate: mgf

Please add crate to category:  physics
Shameless self promotion: I made this crate :3
That being said, it's pretty stable and has some good collision detection algorithms

Thanks! Closed by #85


Storybook is 404

Is this still the link for storybook? https://quicktype.github.io/glide-data-grid it's 404 error page currently.

Yeah yesterday I was looking at it and was working now its 404

Sorry we are juggling repos, will update in a bit. It's back on the glideapps repo instead of typeguard

Where can we access full docs while this page is down?

https://glideapps.github.io/glide-data-grid/

will fix

Storybook link is still broken.

Fixed now


Add font support for Arabic font 'Tajawal'

Describe the Bug
'Tajawal' is a Google font which unfortunately cannot be rendered perfectly.
Minimal Example to Reproduce
<style>
    @import url('https://fonts.googleapis.com/css2?family=Tajawal:wght@400;500;700;800;900&display=swap');

    * {
        font-family: 'Tajawal', sans-serif;
    }
</style>

Expected Behavior
Should render any character normally just like Google font 'Amiri'
Actual Behavior
Some characters does not work:

System Information
OS version: macOS 13.3.1 (22E261)
Python version: 3.10.11
XHTML2PDF version: 0.2.9

@YDA93 Thanks for the report. Unfortunately, there is no active community maintaining this project, so if you would like to have this font supported, you would likely have to to provide a contribution yourself.
In the meantime, I'd suggest you try out "MarkaziText", which is mentioned in the docs, or "DejaVu", which has proven to be working in one of my projects...

I would surely love to contribute and fix this,  I only need some guidance on how this can be done?

Sadly, I'm not quite familiar with all the internals, maybe @luisza can give a hint in the right direction?

Hello,
I think using "body dir="rtl"" could have a positive effect. In case you want to develop it, I'm attaching the lines where the change of letter direction is made. I don't use rtl as such, so clear examples of what should happen using fonts supported by reportlab could help give an idea of how an html code with rtl should turn out.
https://github.com/xhtml2pdf/xhtml2pdf/blob/9e3c88a68796c533e99d26df7e0b0a1f943b01fa/xhtml2pdf/context.py#L436
https://github.com/xhtml2pdf/xhtml2pdf/blob/35014fc2e93ca5fd30fa2a7e947c386fb8457fab/xhtml2pdf/reportlab_paragraph.py#L425
https://github.com/xhtml2pdf/xhtml2pdf/blob/35014fc2e93ca5fd30fa2a7e947c386fb8457fab/xhtml2pdf/reportlab_paragraph.py#L1253


Some update to API v1 docs.

make code python3 compatible,
Update auth kwarg of slumber to work with latest version.
--
I know there is API v2 in progress, I just think it is worth updating that in the meantime.
Some pointer on how to use API v2 would be appreciated too.

Thanks!


ESP32-C3 support

Add support for ESP32-C3 RISC-V MCU. Mostly re-use ESP32 code with a dedicated pin definition section since this MCU has less GPIO pins.
Also used the latest libraries for this module, this may be applied to other boards as well.
Tested on a ESP32-C3 SuperMini board.

Note: this platform requires a fix to FastLED which is already merged but not part of a stable release. Using 3.6.0 is causing display glitches as discussed in https://github.com/pixelit-project/PixelIt/discussions/339
Let's hold off this PR until the fix is released.

Great to see interest in this, the PR got closed due to inactivity and can be reopened.
I have my ESP32-C3 working fine with PixelIT for some time, this branch can be used to build an image:
https://github.com/jekader/PixelIt/tree/esp32c3
Also, there needs to be a patch for the webUI repo to define the pins there as well: my clock has no buttons so didn't bother with that yet but should also be trivial.

Update on the PR: FastLED got a new release 3.7 which includes the fix for ESP32-C3 timing that was blocking this PR before. Will re-test and see if we can move this forward or keep living with the fork (although the changes are quite trivial so I don't see any blockers to merging)

Hi @foorschtbar could you please guide me on changes needed to make the pin definition visible via the web UI? Do we need to assign a variable to make the UI aware of the platform running? ESP32-C3 is somewhere in the middle between esp8266 and esp32 when it comes to pin definitions.


Playerctl: Added metadata_v2

Rewrote parts of the metadata signal, giving more access to most of the metadata that was previously inaccessible.
The signal still defaults to the previous format, and must be manually enabled by setting the metadata_v2 argument to true.
Example:

playerctl:connect_signal("metadata", function(_, metadata, album_art, new, player_name)
        if new == true then
                naughty.notify({
                        title    = metadata.trackNumber .. ". " .. metadata.artist .. " - " .. metadata.title,
                        text     =  "from " .. metadata.album .. " (" .. metadata.contentCreated .. ")",
                        image    = album_art,
                        app_name = player_name,
                        app_icon = gc.recolor_image(icons.music, beautiful.notifs),
                        actions  = { prev, playpause, skip }
                })
        end
end)

Ping @JavaCafe01

Ping @JavaCafe01

🫡


[BUG] logger does not work inside onApplicationShutdown() hook

[x] I've read the docs of nestjs-pino
[x] I've read the docs of pino and pino-http
[x] I couldn't find the same open issue of nestjs-pino
[x] This bug is related only to current library or I've tested the same behaviour with the built-in logger and this is not a bug of NestJS.

What is the current behavior?
Using a logger inside a Nestjs onApplicationShutdown() hook does not emit any log messages to the console at all.
What is the expected behavior?
Log messages inside the onApplicationShutdown() should work just like they do inside onApplicationBootstrap()
Please mention other relevant information such as Node.js version and Operating System.
Node.js 18.x
NestJS 9.3.x
nestjs-pino 3.1.2

https://github.com/iamolegga/nestjs-pino/blob/master/.github/ISSUE_TEMPLATE/bug_report.md?plain=1#L22


update fsouza to v1.2.0

What I did

updates fsouza in order to get identityToken

How I did it

dep ensure after changing Gopkg.toml rev for fsouza/go-dockerclient

How to verify it

ci pass?

One line description for the changelog

update deps

mmm, docker issues. debugging.

we're requiring go1.7 at build time already (same reason) https://github.com/fnproject/fn/blob/master/api/agent/drivers/docker/docker_client.go#L1

thanks for review

@rdallman I still don't see identityToken in AuthConfiguration here https://github.com/fnproject/fn/blob/master/vendor/github.com/fsouza/go-dockerclient/auth.go


KKL

Kerbal Kustomized Ltd - KSP mod to fulfill some gameplay tweaks

#rebuild

#rebuild

Hi @craidler, thanks for the submission!
A netkan file can be set up to automatically index new releases as they come out, but the way this is set up right now you would have to do a pull request in this repo for each release. There are a couple of decent options:

Meta-netkan: We could make it reference the netkan file on your own repo, so you could update the metadata as needed without pull requests.

GitHub kref: We could set it up to get metadata and releases from your repo. This would require adding official releases at https://github.com/craidler/KerbalKustomzLtd/releases, but a CKAN bot would take care of the rest.

Do either of those sound appealing to you?

Hi thanks, yeah sounds great. What can I do to automate the process? I can do the releases thingy. Do you have a link to a How To set that up?

For that you would replace the download property with:
    "$kref": "#/ckan/github/craidler/KerbalKustomzLtd",

Then it will check the list of releases and index the latest one automatically. This also causes it to auto-populate several fields from the repo itself, such as name, author (missing currently), and abstract.
For maximum maintainability, you can add a .version file and this as well:
    "$vref": "#/ckan/ksp-avc",

But that's probably overkill for a few MM configs.

Yeah, dont need to overkill, but reduce overhead. So I have replaced the download property. How will CKAN now keep the versions, dependencies and other properties up to date? I want to include some crafts and stuff in future. So some structures will change.

The properties will be copied from the netkan file to the index entry for the latest version when the bot runs (about every 3-4 hours), except for the download and version properties, which will be set based on the contents of the release from https://github.com/craidler/KerbalKustomzLtd/releases . So if you need to add dependencies or craft files, you would update the netkan file after you create the new release.

Did I do stuff right? I have added a pre release tag in my repo there. Want to do some testing on the plugin part, before pushing a v1.1 public. Maybe I can get some feedback on what changes the repo needs?

CKAN doesn't index pre-releases, to allow authors a way to create a test version without having all CKAN users install it, so we'll need a true release for the pull request to work.
And you'll probably want to prepare a proper download ZIP for installation, minus the source code. Right now all that's available is an archive of the whole repo, which isn't needed just to install the mod. Some examples here: https://github.com/HebaruSan/Astrogator/releases

Aight, thank you very much! I'll work on it.

#rebuild


Fix: Added the link in the blog post section

Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Do not include any personal data.
Fixes # (issue)
Checklist

[ ] I followed the guidelines in our Contributing document
[ ] I added an explanation of my changes

Additional notes (optional)

Fantastic work thank you so much @manasi-jain !!!!


[Bug]: lineCharacterwise hangs the editor when invoked on empty line

Make sure you have done the following

[X] I have updated to the latest version of the plugin.
[X] I have read the README.

Bug Description
When lineCharacterwise textobject is invoked on an empty line the editor hangs.
After some inspection I've discovered that the following loop is causing the bug:
https://github.com/chrisgrieser/nvim-various-textobjs/blob/069f11ecabd18a170da96ad112498374dda57a31/lua/various-textobjs/textobjs/charwise/core.lua#L48-L53
Note that in such case lineContent:find returns beginCol=1 and endCol=0.
May be related to #108.
Reproduction & sample text
Put the cursor on an empty line, then use lineCharacterwise textobject.
neovim version
v0.10.2

Thank you for the quick fix.
But I'm experiencing two other bugs with the latest commit (536bfa3956e591a1696482a6ca47e9f6ee81d774):

lineCharacterwise inner textobject includes trailing whitespaces when invoked on a line with trailing whitespaces
When lineCharacterwise textobject is invoked on an empy line a message is displayed: Textobject not found within the line.. While this looks correct, there are some use-cases where invoking such textobject on an empty line could be useful. An example is a macro to surround multiple consecutive lines with quotes: qxysi_"j. When this macro is called on an empty line I get the following result:

before
lorem ipsum

^ cursor above circumflex accent, on empty line

after pressing ysi_"
lorem ipsum"
"

expected result
lorem ipsum
""

lineCharacterwise inner textobject includes trailing whitespaces when invoked on a line with trailing whitespaces

ah, my bad, fixed.

When lineCharacterwise textobject is invoked on an empy line a message is displayed: Textobject not found within the line.

Well, if you are on a blank line, there is no text object to match, really. if this was a linewise object, then it would just match the empty line, but with a characterwise text object, there is nothing left to match. The behavior is thus correct.

While this looks correct, there are some use-cases where invoking such textobject on an empty line could be useful. An example is a macro to surround multiple consecutive lines with quotes: qxysi_"j

I am sorry to say, but I think "macro on empty line combined with surround plugin" is a bit too niche of a use case. Over the years as an open source maintainer, I've learned to avoid implementing things that complicate the code but only serve extremely niche cases. And I think this is one such case, sorry.

Thank you again for the quick fix.

ah, my bad, fixed.

I'm still experiencing this issue with c975eeae80ed8ba3327e6dff6d6842d564f0dc64: put the cursor on a line with trailing whitespaces, press vi_, trailing spaces are selected.

I am sorry to say, but I think "macro on empty line combined with surround plugin" is a bit too niche of a use case. Over the years as an open source maintainer, I've learned to avoid implementing things that complicate the code but only serve extremely niche cases. And I think this is one such case, sorry.

No problem, I'll find a solution myself.

I'm still experiencing this issue

ah lol, I apparently only committed the comment, but not the actual fix itself. Maybe I accidentally pressed u before committing or something. Anyway, now the fix is commited.

Now it works properly. Thanks.


Analytics fixes

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.
[x] Have you successfully run brew tests with your changes locally?

Try to use --data-urlencode to fix e.g. --c++11 handling (but I'm not sure if this is working quite right). Also, report --HEAD and --devel.
CC @UniqMartin @tdsmith @DomT4
Fixes #631.

@tdsmith Any thoughts on whether this is the right approach and/or how to test it?

Any thoughts on whether this is the right approach and/or how to test it?

Not sure how to best test this, but I think the general approach is fine and I'm happy that we can delegate most of the work to cURL (by using its --data-urlencode option).
From the curl(1) man page for --data-urlencode:

(Added in 7.18.0)

Do you have an overview what cURL version are in use and available on the systems we support, i.e. whether we can be sure all of them are sufficiently new to support this option?

Do you have an overview what cURL version are in use and available on the systems we support, i.e. whether we can be sure all of them are sufficiently new to support this option?

We do somewhere but I'm pretty sure this is too new for all versions we want to track 😭. May be better to use a Ruby method for this instead; the problem is only with Ruby inputs anyway.

May be better to use a Ruby method for this instead; the problem is only with Ruby inputs anyway.

In this case it might be time to pull the GitHub.uri_escape method into a more general context and use it. Though I kinda liked this uniform approach of properly encoding all strings, even when they are sent from Bash code and the strings we use there are typically not problematic.


Want with No password !

I need the encryption without password protection... Please

XOR encrypt requires a key, because the script is decoded with the key.
May be you can embed the key in your script.


add HEALTHCHECK directive (from Docker v1.12)

Add the new dockerfile HEALTHCHECK to docker language.

Thank you for the contribution!


Need spec on conformal coating

MG chemicals 419D Acrylic Conformal Coating was my original suggestion to Embest. However they used Humiseal 1B73 which is an almost identical product and seems to have worked well on our prototypes.

@StrawsonDesign What areas on the A2 layout? Can you mark-up the board PDF?

Graphic added... https://github.com/jadonk/beaglebone-blue/commit/432ebf36c79731519eb745985146eb871d6f98e4
Now we just need to add related information to the README.md in the MFG directory and we can close this issue.

Issue migrated to beagleboard/beaglebone-blue#49


added driver program to train/test FMQA models

also added some test data that I know is modelizable by several
regressors

related to https://github.com/tsudalab/fmqa/issues/4

Example use:
# ./bin/fmqa_model.py -i data/test_data.csv --NxCV 5
13:27:39 (lines, cols): 741 120
13:27:40 (R2, RMSE)_train: 0.967 0.020
13:27:40 NxCV: 5
13:27:41 fold 0 (R2, RMSE)_test: 0.564 0.064
13:27:42 fold 1 (R2, RMSE)_test: 0.697 0.063
13:27:44 fold 2 (R2, RMSE)_test: 0.753 0.055
13:27:45 fold 3 (R2, RMSE)_test: 0.735 0.060
13:27:46 fold 4 (R2, RMSE)_test: 0.681 0.062
13:27:46 len(truth) == len(estimate): 741
13:27:46 global (R2, RMSE)_test: 0.695 0.061

If you have gnuplot installed, it creates a regression plot then.

If this PR is accepted, I'll add the code to save/load a model for production use.


DFGT wheel jerkiness with FFB

http://forums.pcsx2.net/Thread-Qemu-USB-Wheel-Storage-mod?pid=358423#pid358423
http://forums.pcsx2.net/Thread-Qemu-USB-Wheel-Storage-mod?pid=355645#pid355645

Seems by design

What's the right PCSX2 and plugin version should I use?My DFGT cannot work properly with this.
I tried 1.3.0,1.4.0,copules of 1.5.0 git version on PCSX2 and 0.8.0 0.8.1 0.8.2 for plugin but all for them report "rawinput: Could not enqueue report data: 15" and the wheel itself is not in the center and basically not working when launch the game and buttons all mapped wrong.

Uncheck "Logitech wheel pass-through".
Do PS2 games support DFGT in its native mode? Plugin itself doesn't change its mode so the HID report format is probably wrong hence messed up inputs. It could work in GTF/DF/DFPro mode probably but isn't necessary.
Enqueue error is because game doesn't read input data as fast as wheel produces it if using pass-through. Might cause stale/laggy input.

Uncheck "Logitech wheel pass-through". (Deemit, it defaults to enabled.)
Do PS2 games support DFGT in its native mode? Plugin itself doesn't change its mode so the HID report format is probably wrong hence messed up inputs. It could work in GTF/DF/DFPro mode probably but isn't necessary.
Enqueue error is because game doesn't read input data as fast as wheel produces it if using pass-through. Might cause stale/laggy input.

After uncheck the pass-through it works flawlessly,thank you!
I mainly play GT4 so it should support DFGT?Or not?

IIRC Driving Force Pro is the newest it supports, DFGT launched with GT5 on PS3.

IIRC Driving Force Pro is the newest it supports, DFGT launched with GT5 on PS3. 900 degree range is supported anyway so no difference.

I think I saw some videos on YouTube that someguy did connect it to PS2...That's weird

Yeah, newer wheels start up as "Driving Force" initially and DFGT, G25, G27 support acting as old wheels. On PC, driver then sends a command that switches it into "native" mode with full supported features.
For PCSX2, there's no difference what wheel you use if you can set it to at least 270/900 degrees, mostly :P


create-svelte: allow importing JSON modules

Since Vite supports directly importing JSON modules this should be enabled in tsconfig.json so that TypeScript or VS Code doesn't complain about it.
This doesn't need to be added to jsconfig.json.

Question is, if we want that option or a declare module "*.json"; in global.d.ts. Adding the tsconfig flag means JSON files will get scanned by TS to infer the type structur, which is very handy but can also be very slow for large JSON files. What's the 80% use case here?

Oh, interesting. Considering this is a Vite feature I thought Vite might have already added that type definition, but it seems to be missing from vite/client.d.ts.
Does the flag make TS scan all JSON files, or only imported ones? It seems to make sense to me that if you're explicitly importing a JSON file that you probably want to manipulate it in some way instead of treating it as a black box, so the type information would be useful compared to just getting Record<string, any>. You're right about the size though, stuff like lists of countries which was the use case that prompted this PR can be quite large.
This raises the question if it should be enabled for jsconfig.json or not. It doesn't complain, but it also doesn't show any type information if the flag isn't enabled. I guess we don't enable jsCheck anyway, so maybe we're assuming people are picking JS to opt out of types?

It only will scan the imported ones. Where the breaking point for large JSON files is, I don't know - but I guess we are talking megabytes here, not kilobytes. We had an issue over at language-tools once where intellisense was getting really slow because of it.


Update README.md

Update README.md

:+1:

👍

Coverage remained the same at 8.559% when pulling 1b6fdfebb3a407dba897661f42e8cf88b6206a7e on readme-bump into 3b322652586a742b52ff8d472c2fc973f4eebef2 on master.


[Proposal] Add List.distinct

A useful method which many languages have is a distinct or unique method which removes duplicates from a list or array and I'd like to propose that we add something similar to Wren.
The most obvious way to implement this would be something like the following which makes use of the new List.indexOf mathod:
distinct {
    var result = []
    for (element in this) {
        if (result.indexOf(element) == -1) result.add(element)
    }
    return result
}

This has the advantage that the original ordering is maintained, doesn't require much code  but  does require a lot of computation.
I have seen this kind of method implemented either by first sorting the list or by using a map to weed out the duplicates. However, a major problem with these approaches is that the original ordering is lost and, for sorting, you need to provide a comparer function. Using a map is quick but only certain types of object are suitable as map keys so you'd probably have toString everything else.
So two questions. Do you agree that a distinct method would be worth adding and, if so, can you think of a more efficient way to implement it?

Problem is not about agreeing (even if I don't have the final decision),
but more about: does it have a broad usage to justify inclusion in core.
You can use contains instead of adding indexOf. An overload might be
required to allow user to provide an equality function.

does it have a broad usage to justify inclusion in core.

All I can say is that it's come up a lot in my own code using various languages over the years.

You can use contains instead of adding indexOf.

It appears that @ruby0x1 has already added List.indexOf (rightly IMHO) as it's mentioned in the 0.4.0 Changelog. So we might as well use it.

Well using indexOf instead of contains is the difference between making it a Sequence method and a List method.

That's a good point.
Making it  a Sequence method rather than a List method would be better as it's then more general.

Sequences can be infinite.
Many languages requires the list to be sorted already. This has both the advantages: using faster algorithm and not requiring to provide a comparer, along with being faster if the list is already sorted.

True, but you might want to sort you list according to another criteria
that the default one.

If you leave the sorting task up to the user, he can sort however he wants.

I can think of 4 other languages where the list doesn't have to be sorted: C#,  Java, Kotlin and Ruby.
To my mind, the unsorted case is definitely the most useful though and, as @mhermier said earlier, you might not want to use the default sort order so sorting is probably best left as a separate step.

In C++, std::unique does not requires the input to be sorted. Like all the other functions mentionned, it removes consecutive duplicates except the first one. Like uniq in shell scripts. This function can be implemented in O(n).
The function in the first comment does not do this, it removes duplicates that may not be consecutive, which is very misleading for all people that know this function in other languages. Moreover, it's implemented in O(n^2).
For @ChayimFriedman2, the documentation of the Rust function does not require the input to be sorted, it only says that if the input is sorted, all duplicates are removed.

The distinct functions in C#, Java and Kotlin remove all duplicates (not just consecutive duplicates) as can be readily seen from their documentation:

C#
Java
Kotlin

Even if I'd never used these functions before, this is what I'd expect them to do because distinct means that the resulting elements are not the same.
Ruby's uniq function also removes all duplicates.
You're correct about what C++'s unique and Rust's dedup functions do but, as they're using different names (and the former is confusingly named IMO in any case) I don't see why this would mislead people if Wren were to use Sequence.distinct.

In C++, std::unique does not requires the input to be sorted. Like all the other functions mentionned, it removes consecutive duplicates except the first one. Like uniq in shell scripts. This function can be implemented in O(n).
The function in the first comment does not do this, it removes duplicates that may not be consecutive, which is very misleading for all people that know this function in other languages. Moreover, it's implemented in O(n^2).
For @ChayimFriedman2, the documentation of the Rust function does not require the input to be sorted, it only says that if the input is sorted, all duplicates are removed.

I know that, but like @PureFox48 said, because of their naming it seems that their primary purpose is to remove all duplicates - which is done only when the input is sorted. The "remove consecutive duplicates" is just an attempt to standardize what they do when the input is not sorted.

My point is that a function like the one proposed in this issue is totally under-optimised for most cases (if not all cases). As I said before, it runs in O(n^2) as implemented above. But do you really need to keep the order of the elements? In many cases no, so the best strategy would be to first sort the sequence (in O(n log n)) and then use a function like unique in O(n). Total: O(n log n). Much better than O(n^2). And in some cases, you already know that your input is sorted and you can call unique directly. Total: O(n). So, I would like to know what the use case for keeping the remaining elements orderered is (you are removing some similar elements that were not in this position, so you do not really care about the position of the remaining elements), and hence, what the point of distinct as proposed is.

What could be done is have the Sequence method implement the less efficient algorithm, and since we have List.sort(comp) already, the distinct method on lists could use that, or remember if the list is already sorted and chose which algorithm to use.

It can be under optimised, but it preserve the order of the elements and
this can matter. Imagine I want a list of unique random int, having it
sorted defeat the interest of having a random sequence.
If things needs to be fast, one can use a Bag/Set/(Unique)SortedList
feeded from the list.

Maybe then we need a distinct and distinctSort then, and that one could
be optimised, by any means?

I kind of agree you might not want to have your list/sequence sorted automatically, but then it might still make sense to maybe keep track of whether a list is sorted to get a better complexity in case it is. Then if the user doesn't mind they can do .sort().distinct. Otherwise the action is O(n^2).

Perhaps the best solution here would be for distinct to take a parameter - alreadySorted say.
The implementation could then use an appropriate algorithm for the case in point.
We could also have a second method (a simple getter) which called the primary method with alreadySorted set to false.
Of course, it would be up to the user to decide whether his/her sequence/list was already sorted or not which I think is fair enough.

I don't like that idea, it is too easy for the user to produce false result/assumptions. And in addition, it is harder to implement optimized versions of the behavior.
That make me thing we can need isSorted and 'isSorted(comparison_fn)' functions.

Sure, the user can get it wrong but the same could be said about binary search functions which assume the sequence is already sorted and you get strange results if they're not.
Although I wouldn't object to having an isSorted function, I think it would be too expensive for distinct to have to call this every time to decide which algorithm to use.
Incidentally, what is clear as far as sorting is concerned is that we badly need lexicographical ordering for strings and for them to support the ordering operators. The new List.sort method is going to be hamstrung without this.

I think the solution should be made up of three parts:

Add List.distinct.
Add List.removeConsecutiveDuplicates (probably with a better name).
Add sets (that was mentioned previously).

I don't think that adding sets would necessarily help here. The most natural implementation for Wren would be to use a map where, say, values are always set to true. However, you'd then have the problem that only value types can be used as keys and iteration order would be all over the place.

This go way beyond the topic of this issue, and add way to much code to core for my taste, even ignoring Set. I think we should concentrate on doing a bare minimum functional guarantee in core even if it means having O(n^2) complexity. So it would just be adding:
class Sequence {
  ...

  distinct { ... }
  distinct(equalFn) { ... }
}

Making distinct lazy could be an interesting (required?) implementation choice for the default implementation, since it can deal with infinite Sequence. Memoization could be a plus, but I wonder how beneficial/expensive it could be. Once that is established, sub-classes optimizations can be thought.
I opened #900 to deal with with Sequence::isSorted because it should be an interesting addition, but should not be tightly coupled with this change because of infinite Sequence.

I think we should concentrate on doing a bare minimum functional guarantee in core even if it means having O(n^2) complexity.

I'd be comfortable with that as I think we've become too side-tracked with the sorting issue which, to my mind, is best left as a separate operation when needed.
If it's going to be a Sequence method, then I think the default implementation should definitely be lazy though I'm not so sure about memoization. Do we use that for any of the existing methods?

No currently it is not used anywhere. It can be added later with a dedicated lazy class if required I think.


Emit close event when stream is complete

Fixes #2897
Fixes #2898

Thank you very much for the PR. Are you able to add a couple of unit tests to cover this logic? This should help prevent any future regression.

Sure thing! I'll take a look over the next couple of days when I get a chance.

Coverage increased (+0.0002%) to 99.904% when pulling f952e450428622e68aa69c2c3310a20224aa0fe2 on driannaude:master into 079bd7b9f5cdb3e2d209bd3d8042607e9ed66485 on lovell:main.

Brilliant, thank you Drian!

Hey guys !
good job on the bug fix
But any idea on getting rid of this error though ?
(that was probably working because of the bug 🙈)
    private async handlePicture(resource: FileUpload, hash: string): Promise<MediaInformation> {
        const transformer = sharp().rotate().jpeg();
        await this.upload(resource.createReadStream().pipe(transformer), redacted({ hash, type: MediaType.Picture }));

    private upload(resource: Options['params']['Body'], name: string) {
        return new Upload({
            client: S3Snap,
            params: {
                Bucket: awsSnapConfig.bucket,
                Key: name,
                Body: resource,
            },
        })

ERROR

Error [ERR_STREAM_PREMATURE_CLOSE]: Premature close
    at new NodeError (node:internal/errors:372:5)
    at Sharp.onclose (node:internal/streams/end-of-stream:136:30)
    at Sharp.emit (node:events:527:28)
    at Sharp.emit (node:domain:475:12)
    at Object.<anonymous> (node_modules/sharp/lib/output.js:1139:16)
    at Object.topLevelDomainCallback (node:domain:152:15)
    at Object.callbackTrampoline (node:internal/async_hooks:128:24)

@arsonik If you still require help, please open a new question at https://github.com/lovell/sharp/issues/new?labels=question&template=question.md - please remember that you'll need to remove non-sharp dependencies from your question, including removing any possible networking problems, as part of this.


Global config

Is it real to setup a global config in my user root and directory and use the same config for all my projects?

Can you tell what goal you are trying to achieve? All you projects have the same hooks/lints/settings? And you don't want to have this config in project repository for other team members?

I have few pet projects on which i work alone and where i use the same rules
So, i would like to get same global config, which achieve main rules, which can be rewrited in specific directory

Okay. Sounds like case for symbolic links.
https://www.shellhacks.com/symlink-create-symbolic-link-linux/

Go to you home directory and create a general lefthook.yml with desired configuration.
Go to you project directory and make a link

ln -s ~/lefthook.yml ./lefthook.yml

Rewrite general configuration by lefthook-local.yml with specific settings.

Lefthook doesn't support general configuration, so I think it's only way to achieve your goal.

Thanks


Uncompatibility with Trinkets n Torches

Makes ores turn really dark when you get close with a Trinkets n Torches light source

This is an issue with Trinkets n Torches. The ores are just standard light sources like any other light emitting block.


2x your capapility drops!

Currently, autofix does not detect that caps have already been dropeed, so it drops them again.
I haven't had a look at why, but this is the result:
          capabilities:
            drop:
            - AUDIT_WRITE
            - CHOWN
            - DAC_OVERRIDE
            - FOWNER
            - FSETID
            - KILL
            - MKNOD
            - NET_BIND_SERVICE
            - SETGID
            - SETFCAP
            - SETPCAP
            - SETUID
            - SYS_CHROOT
            - AUDIT_WRITE
            - CHOWN
            - DAC_OVERRIDE
            - FOWNER
            - FSETID
            - KILL
            - MKNOD
            - NET_BIND_SERVICE
            - NET_RAW
            - SETFCAP
            - SETGID
            - SETPCAP
            - SETUID
            - SYS_CHROOT

Seems like this is the reason: https://github.com/Shopify/kubeaudit/blob/master/cmd/capabilities_fixes.go#L25. Appending to the same list of dropped cap without checking if it's present or not


Query Execution State

This PR includes creation of a new class called QueryExecutionState. The functionality of the class is related to book keeping of a query execution which includes:

Which operators in the DAG have finished their execution.
Whether an operator has produced all of its work orders.
Whether the execution of the query is over.
For an active operator, modifying and retrieving the number of work orders which have been dispatched and the number of work orders which have finished their execution.
Rebuild related information for the relevant operators.

Earlier, all of the supporting data structures were private members of Foreman. Now they have been pulled out in the class QueryExecutionState. As this class is fairly straightforward, and we had all of its functionality earlier in Foreman, I didn't write test cases for this class.
The next PR will be about QueryManager, which moves all the functions about a query's execution from Foreman to a new class called QueryManager.
Recreating the PR because Travis build wasn't fired in the last PR for some of the commits.

LTGM. Will merge once Travis comes back green.

@pateljm When you merge a PR based on squash, we need to do some extras to squash the commit messages.
We need a better commit message than below:
commit f7f3794ef9411338fca928b27aba31ff99fdfd22
Author: Harshad Deshmukh<EMAIL_ADDRESS>Date:   Wed Apr 6 00:27:52 2016 -0500

    Query Execution State

    * Added QueryExecutionState class

    - A single class that does the book keeping of state of query execution.
    - Encapsulates the various data structures used in Foreman for the
      purpose of this book keeping.

    * Foreman uses query execution state.

    - Replaced various vectors, unordered maps with a single query
      execution state instance in Foreman.
    - Foreman test makes use of query execution state too.

    * Copyright fix.

    * Doxygen fixes for QueryExecutionState.

    * C++11 related and gcc specific fixes.

    * Renaming and minor refactoring in QueryExecutionState.

 In this case, Added Query Execution State.
Replace all existing commit messages with the link to the PR. In this case, https://github.com/pivotalsoftware/quickstep/pull/131.

FYI, this is the commit message from the PR I just merged for @pateljm:
commit b37ee538b3891b4a48424f093b42c1ab249ea416
Author: Jignesh Patel<EMAIL_ADDRESS>Date:   Wed Apr 6 00:35:45 2016 -0500

    Drop Catalog Initialization Files.

    https://github.com/pivotalsoftware/quickstep/pull/130

And this is a commit message from Apache Mesos.
commit 87b5159109d3e10323dc8ce505e79dbf6168e6d6
Author: Kevin Klues<EMAIL_ADDRESS>Date:   Tue Apr 5 17:40:17 2016 -0700

    Added tests for the Nvidia GPU isolator.

    This commit also includes a test filter called 'NvidiaGpuFilter' that
    checks for the existence of 'nvidia-smi' before running any tests that
    contain the 'NVIDIA_GPU_' prefix.

    Review: https://reviews.apache.org/r/44364/


When does the user model's init actually run?

This may be more of a Flask or Flask-Login question, but...
When does the init for the user model actually run?
I've added some code to it, assuming it would be run during every request, but that doesn't seem to be the case. It appears to only run when creating a new user. Is that so and why? I thought that an object for the user would have to be instantiated during each request.

Models are special objects that do not follow the regular rules, SQLAlchemy adds some magic behavior to them. The __init__ method is invoked when you create a model in the normal way, but when SQLAlchemy loads data from the database it skips the constructor.
This behavior is even documented: http://docs.sqlalchemy.org/en/latest/orm/constructors.html. This page tells how to add constructor functionality to a model.

Ok, that would explain it then. Thanks so much.
~Sent from my Nexus 5
On Sep 10, 2015 4:47 PM, "Miguel Grinberg"<EMAIL_ADDRESS>wrote:

Models are special objects that do not follow the regular rules,
SQLAlchemy adds some magic behavior to them. The init method is
invoked when you create a model in the normal way, but when SQLAlchemy
loads data from the database it skips the constructor.
This behavior is even documented:
http://docs.sqlalchemy.org/en/latest/orm/constructors.html. This page
tells how to add constructor functionality to a model.
—
Reply to this email directly or view it on GitHub
https://github.com/miguelgrinberg/flasky/issues/73#issuecomment-139374478
.