MongoDB Cheat Sheet.md

What is MongoDb
Why MongoDb
Advantages of MongoDb
Disadvantages of MongoDb
MongoDB Cheat Sheet

Description 📜MongoDB Cheat Sheet.md
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context.
Fixes #8531

Type of change 📝

[X ] Doc#umentation (Content Creation in the form of codes or tutorials)

Domain of Contribution 📊

[ X] Data#base

Checklist ✅

[X ] I follow Contributing Guidelines & Code of conduct of this project.
[ X] I have performed a self-review of my own code or work.
[ X] I have commented my code, particularly in hard-to-understand areas.
[ X] My changes generates no new warnings.
[ X] I'm GWOC'21 contributor

i have made the changes sir please check and let me know.


Could not find com.whiteelephant:monthandyearpicker:1.3.0.

implementation 'com.whiteelephant:monthandyearpicker:1.3.0'
using this in build Gradle but now I'm facing this issue
Execution failed for task ':app:checkDebugAarMetadata'.

Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
Could not find com.whiteelephant:monthandyearpicker:1.3.0.
Searched in the following locations:
- https://dl.google.com/dl/android/maven2/com/whiteelephant/monthandyearpicker/1.3.0/monthandyearpicker-1.3.0.pom
- https://jcenter.bintray.com/com/whiteelephant/monthandyearpicker/1.3.0/monthandyearpicker-1.3.0.pom
- https://repo.maven.apache.org/maven2/com/whiteelephant/monthandyearpicker/1.3.0/monthandyearpicker-1.3.0.pom
- https://jitpack.io/com/whiteelephant/monthandyearpicker/1.3.0/monthandyearpicker-1.3.0.pom
- file:/D:/Altpay/PSO/pso_git/pso/app/libs/monthandyearpicker-1.3.0.jar
- file:/D:/Altpay/PSO/pso_git/pso/app/libs/monthandyearpicker.jar
Required by:
project :app

     **Did any one Solve this issue?**
     **Kindly Share the Solution**

you can solve changing repo like this
//    implementation 'com.whiteelephant:monthandyearpicker:1.3.0'
    implementation 'com.github.joeShuff:MonthAndYearPicker:1.3.0'

I also have this issue. Hows that happened?

Facing same issue.

The reason for this is the sunset of JCenter, the currently only repository of this library according to mvnrepository.com.


Settings: automatically start on system startup

This has apparently some rudimentary support from Tauri already: https://github.com/tauri-apps/tauri/discussions/2576#discussioncomment-1433160
so should be more or less straight-forward

Fixed in #519


"The editor has crashed"

When closing an open folder in the treeview which has other open folders in it, the editor will frequently crash.
Reproduction Steps:

Open a folder in treeview that has other folders in it.
Open one or more of the folders within the first folder.
Close and reopen the first folder until the crash.

Expected behavior:
Just close the folder, no crash.
Observed behavior:
Crash when closing the folder.
Atom:
Atom    : 1.7.2
Electron: 0.36.8
Chrome  : 47.0.2526.110
Node    : 5.1.1
OS and version:
Windows 10 Pro (version 1511, 64bit)
Installed packages:
atom-grails
language-groovy
sort-lines

Problem can be reproduced in safe mode: YES
Problem started happening recently, didn't happen in an older version of Atom: YES
Problem can be reliably reproduced, doesn't happen randomly: NO
Problem happens with all files and projects, not only some files or projects: YES

I can reproduce it.

Problem can be reliably reproduced, doesn't happen randomly: YES

Should it be reported in tree-view project (with a better title)?

That is probably a much better idea, I guess I should have done that to begin with... I will try to when I get a few minutes (currently at work).

Moved to the tree-view project.


Display of MARC conversion partially obscured

In stage, for the last couple days at least if you request MARC conversion on the instance record, the resulting MARC display is partly obscured by being overlayed with the part of the screen displaying the title of the template and URI. You can't scroll to get around it.  I'll give a few screenshots

thanks
greta

Magda just let me know that this problem is only with the MARC conversion button at the top of the screen.  The one at the bottom doens't have the header across it.  Go figure.
Anyway, hopefully that will be a clue.

Thanks! We know what the problem is and are working on a fix.


rootston: create foreign toplevel handle before sending outputs

Otherwise the initial list of outputs isn't sent to foreign-toplevel clients.

This shouldn't matter, since the foreign-toplevel-mgmt implementation sends the list of current outputs, right?

Thanks!


Update status.ObservedGeneration for sources resources when sources resources get reconciled successfully

Expected Behavior
status.ObservedGeneration for sources resources(for example: githubsource) get updated to the ObjectMeta.Generation field of sources resources when sources resources get reconciled successfull
Actual Behavior
In PR https://github.com/knative/eventing/pull/1849, we tried to validate dependency by checking whether the ObjectMeta.generation of dependency is equal to the Status.ObservedGeneration of dependency.
However, we found we don't update status.ObservedGeneration for sources resources when sources resources get reconciled successfully. We should do that when sources resources get reconciled successfully
Steps to Reproduce the Problem

Additional Info

/assign @capri-xiyue


Smoke:RabbitMQ

To check if:

service is up
rabbitmqctl cluster_status or just status (if not clustered)


Implement OpenRGB support

WIP at https://github.com/FrameworkComputer/OpenRGB

404'ed. Is that a private repo for now?

Is this for the upcoming Framework 16?  I want to get my hands one one of these for OpenRGB keyboard (and hopefully LED matrix) support.

404'ed. Is that a private repo for now?

Yes. Actually I should delete that, move it over to a fork on GitLab and eventually open a merge request there.

Is this for the upcoming Framework 16? I want to get my hands one one of these for OpenRGB keyboard (and hopefully LED matrix) support.

Yes it is! This repository here is for the white LED Matrix module (and other non-keyboard input modules).
Couldn't take advantage of all of OpenRGB but I think it wouldn't be hard to add.

If the keyboard is using QMK, then I would wait for the QMK people to finalize the XAP protocol including the direct mode.

It is. Check out the current work-in-progress fork at https://github.com/FrameworkComputer/qmk_firmware/pulls
Okay good, I thought so too. Let's see if it can be ready before our launch.
But even if not, the firmware is easily updateable by users.

Is Framework considering RGB matrix panels?  I'd really like to see that
option!
On Mon, Mar 27, 2023 at 2:53 AM Daniel Schaefer @.***>
wrote:

404'ed. Is that a private repo for now?
Yes. Actually I should delete that, move it over to a fork on GitLab and
eventually open a merge request there.
Is this for the upcoming Framework 16? I want to get my hands one one of
these for OpenRGB keyboard (and hopefully LED matrix) support.
Yes it is! This repository here is for the white LED Matrix module (and
other non-keyboard input modules).
Couldn't take advantage of all of OpenRGB but I think it wouldn't be hard
to add.
If the keyboard is using QMK, then I would wait for the QMK people to
finalize the XAP protocol including the direct mode.
It is. Check out the current work-in-progress fork at
https://github.com/FrameworkComputer/qmk_firmware/pulls
Okay good, I thought so too. Let's see if it can be ready before our
launch.
But even if not, the firmware is easily updateable by users.
—
Reply to this email directly, view it on GitHub
https://github.com/FrameworkComputer/inputmodule-rs/issues/18#issuecomment-1484669584,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIAY7FT2GAMJK2C2K2FBVTW6FBORANCNFSM6AAAAAAVTE5M7A
.
You are receiving this because you commented.Message ID:
@.***>


feat: focused editing mode in test sets

Resolves #272

Thanks for the PR @MohammedMaaz! Great job! I have only one comment, can you please make the modal larger (something like in the video), while making sure it's responsive to screen size. Also can you please add resizable:true (https://www.ag-grid.com/javascript-data-grid/column-sizing/) to enable resizing the column both in the initial test set screen and the the modal?
Screen.Recording.2023-08-08.at.10.50.28.mov
Thanks again :)

Done

@all-contributors please add @MohammedMaaz for code and UI


scroll bar at bottom, not visible therefore.

datasets.
scroll bar is after the table.  If user does not scroll down, they may conclude only the columns shown are what is in the dataset.

display 5 rows


[114] Wrong object deserialization when list initialized in ctor

Fixes #114

Superseded by #130.


:sparkles: Consultancy page.html #11

Description
Fixes issue number #11
This PR addresses the issue related to adding the consultancy-page.html file to the project, as outlined in issue #11 . The goal is to create a dedicated HTML file for the consultancy page and ensure it's well-structured and documented.
Type of change

[x] New feature (non-breaking change which adds functionality)

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my code
[x] My changes generate no new warnings

Good attempt closing this pr as it is already done, please pick another issue


[FLINK-27066] Reintroduce e2e tests in ES as Java tests.

This PR introduces Java-based E2E tests for the Elasticsearch connectors based on the Sink testing framework and removes the legacy bash-based tests [TBD].

Thanks a lot for your review @fapaul. I originally did not want to invest much time into addressing code duplication because I was under the impression that the ES6-related tests are going to be removed soon after the connector externalization. However I still see your point in doing so. At least when ES8 will be introduced, we'll be able to make use of the proper setup.
I reworked the structure and extracted everything up until the level when a lot of concrete Elasticsearch classes are used. Further deduplication between the Elasticsearch6Client and Elasticsearch7Client is potentially possible but would require reintroducing a facade for a huge chunk of low-level ES abstractions and it does not seem to be worth it.

@flinkbot run azure

Are the Elasticsearch6SinkExample and Elasticsearch7SinkExample still used after removing the bash tests? AFAIK the test suites do not use it.

I think we should be consistent in naming the common modules. The Kafka module is called [...]common-kafka and yours is called [...]elasticsearch-common.

Did you address this?

Did you address this?
Pardon, missed the top review comment.  Fixed now.

Are the Elasticsearch6SinkExample and Elasticsearch7SinkExample still used after removing the bash tests? AFAIK the test suites do not use it.

Good point. Cleaned up.

@flinkbot run azure

@flinkbot run azure

Resolved the conflicts.

Thanks, @fapaul, I squashed the review commits.


chore: npm audit for js-yaml DoS

See https://www.npmjs.com/advisories/788

Coverage remained the same at 99.265% when pulling 0c4d3c48bbc36f2077d14dce7000a3dc79670597 on npm-audit into 7b947a3559b1b8adf26fe286eff5ea44a1dfecc2 on master.


[Format JSON] Updates to extension

Description

Format JSON Lines: Make actions in sync with Format JSON command, i.e. copies the output to clipboard for "Format" action.
Used toasts instead of HUDs to color-code messages/prompts.
Added new command to format JSON selected in the foremost editor.
Upgraded dependencies to resolve critical security vulnerabilities.
Minor refactoring and linter fixes.

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Can you add a quick demo video/screenshot to show the changes ? Otherwise looks ok to me


_area_input doesn't Work with Moving Objects

Godot version: 3.0-stable, custom build from 9bd402698cfa299b79b9144f8d7744c308a4e085
OS/device including version: Gentoo Linux 4.9.72, KDE Plasma 5.10.5
GPU model and drivers: NVidia GTX 1080 w/proprietary drivers 387.22
Background:
For AR/VR projects, UI has to be in world space. The way to achieve this as demonstrated by the example projects is to render a viewport onto a plane and to translate raycast-based world space input into viewport coordinates.

As described in the InputEvent Documentation:
4. If no one wanted the event so far, and a Camera is assigned to the Viewport, a ray to the physics world (in the ray direction from the click) will be cast. If this ray hits an object, it will call the CollisionObject._input_event() function in the relevant physics object (bodies receive this callback by default, but areas do not. This can be configured through Area properties).
Issue description:
The CollisionShape's _area_input signal for mouse and touch input is emitted only when the mouse/touch point moves, but not when movement of the CollisionShape node itself causes the raycast to hit another point on the CollisionShape.
This causes unexpected behavior when, for example

UI is faded in before the camera stops moving during a cutscene
The camera position is altered in response to mouse hover events over UI controls

I believe the position of touches and the mouse cursor on CollisionShapes should be re-checked once per frame and a new _area_input signal emitted if the raycast makes contact at a different position (or even hits a different collider altogether).
Minimal reproduction project:
Moving_3D_UI.zip

Here is a small update to the minimal reproduction project. This version forwards a mouse position of (-1, -1) one time after the mouse has moved off the collider.
The example injects InputEventMouseMotions to the Viewport from _process() to keep the mouse position up to date while UI plane moves around (this emulates the suggested behavior).
If I keep the mouse perfectly still (and wait for the UI plane to move under my mouse cursor), it will cause the button to become highlighted (hover effect, but then it will stay highlighted even though I deliver mouse events where the mouse position is outside the button to the Viewport.
Moving_3D_UI.zip (version 2)

This should work now without any hacks. Just forward the event as soon as mouse moves and it will work out of the box. No need to re-send events on every frame or similar.

I would rate it as a 90% success :)
Everything works, except mouse capture. If you click on a button and hold down the mouse, the button's "down" state will be shown if the mouse cursor is over the button at its original transform, no matter where to button actually is on the screen.
Apart from that, an amazing improvement and an early Christmas present. Thank you!


Enhancement: Refactor for to_hash function in different messages class to be split by role

Whats Changed:

Refactored the to_hash function in the openai_message.rb, and google_gemini_message.rb  classes as per the issue https://github.com/patterns-ai-core/langchainrb/issues/856

@rishirajkumar97 Looks good, could you please add specs?

@rishirajkumar97 Looks good, could you please add specs?

Will get the specs closed by the weekend! Cheers !

@rishirajkumar97 Thank you!


The 'Help' menu item in practically all apps gives an error

The help file format is not supported yet, nor are the advanced APIs for task switching. The net result of this is that the common ways in which apps implement a 'Help' menu item will likely result in an error such as:

unimplemented operation opx.system.SetForegroundByThread
KErrGenFail from system RunApp

Creating this issue just to mark that this is a known issue.

I've changed the behaviour in ff2587654090aa74afdbc90c7f09e1ba1084e607 to put up an explicit dialog which references this issue (and allow the app to continue) rather than crashing and burning.

That seems like a great idea!


could you tell me how to update docker-compose to a newer version

iam trying to execute mt docker-compose file,but getting error like this
ERROR: Version in "./docker-compose-appstack.yml" is unsupported. You might be seeing this error because you're using the wrong Compose file version. Either specify a version of "2" (or "2.0") and place your service definitions under the services key, or omit the version key and place your service definitions at the root of the file to use version 1.
-- can you help me out anyone,how to resolve it

Installation instructions are available here: https://docs.docker.com/compose/install/


Schema-First: Default Value in input object

Is your feature request related to a problem? Please describe.
I often need to set default value to on field in a large input object, currently there is no way to do that
I am not sure but i think the spec allow to do it like this
input ExampleInput {
  value: Int = 0
  another: String
}

Describe the solution you'd like
i would like to define default value like the example above
Describe alternatives you've considered
Additional context

This should already work.
I will have a look and write some tests for this.

Any updates on this one?

Any update on this? I have a similar problem with  public System.Guid Id { get; set; } = System.Guid.NewGuid();

This works. But System.Guid.NewGuid() is not a valid GraphQL default value. GraphQL default values are constants. You can still handle such logic in your resolver.

For something like Guid.NewGuid() handle it in the resolver:
public class Query
{
    public Guid GetBook(BookInput input) => input.Id ?? Guid.NewGuid();
}

public class BookInput
{
    public DynamicDefaultValueInput(Guid? id)
    {
        Id = id;
    }

    public Guid? Id { get; }
}

You could also create a custom directive if you want that to be automatically done by a middleware and reflected in the schema.
input BookInput {
  id: UUID @newGuidIfNotSet
}

If you want to go down the latter give me a ping and I post how this can be done.

Closed since the original issue was fixed with the initial work of version 12.


warn when adding a mask that matches "too many" of the last N connections

we already hold a dict of all the users we know are connected (_users), but we're not currently using it, and I don't think it would actually be helpful for this given we'd want to also check against masks that have since disconnected. maybe we can get rid of _users until we find a use for it, and replace it with a Deque[str] that we populate from the references generated in _mask_match(), that we pop old items off when it becomes bigger than the N sample size we choose


Document $*W

The problem
It's a very specific variable, used extensibly in the MOP, but also in the wild in the ifmodule
Suggestions
Try and find what it does, and how it could be put to good use in creating interesting stuff like if

I'd rather this wasn't documented. It's very much a Rakudo-internal thing, and even there it probably won't survive (the same forces act on it as with $*ACTIONS, which already went away).

Ah, and as to what it does: it's the compilers internal model of declarations.  None of them are considered a supported API, and they may be changed at any time (and have in the past).

The problem is when we find instances of it in the wild. Documentation
should be used to give developers a chance to create stuff, but also to
understand what has already been published, in this case p6-if, which is an
amazing piece of code, and it's relied on by several other modules in the
ecosystem.
So this is partly about not giving people who are working in the core an
unfair advantage (but it could be), but mainly about making perl6/doc a
real reference for the Perl 6 code that is out there. Even if it's got to
be surrounded by all kinds of caveats.

Please note that I'm not saying we should document all Rakudo Internals.
Only those pieces that already out in the wild (and this one has been for a
very long time).

The problem is when we find instances of it in the wild.

Well, from the perspective of a Rakudo developer, the problem is the usage of an internal implementation detail in the wild. :-)

So this is partly about not giving people who are working in the core an unfair advantage

Making it easier to use internal details puts us at an unfair disadvantage: we're expected to make Rakudo better without breaking the ecosystem, but are then losing degrees of freedom that are helpful for doing that.

p6-if, which is an amazing piece of code, and it's relied on by several other modules in the ecosystem

What we really need is to provide a way for p6-if - which I agree is a wonderfully creative piece of work, even it depending on unsupported interfaces - to do its thing via an interface we're happy to support.

If internal implementation details are used in the wild, they are not so internal... And sometimes documenting them helps someone understand better other features that are not so internal.
Point is: people are going to use what they see fit no matter what. Documenting internals might make marginally more likely that people use them, thus increasing the risk of core supporting features just slightly (because we are talking about supporting more stuff, since it's already in the open, it might have to be supported (or not) anyway), but it makes exponentially more likely that people understands Perl 6 better and then use it for their own purposes. Of course, as long as we give all necessary caveats so that who use it must be pretty sure of what she does.

What we really need is to provide a way for p6-if - which I agree is a wonderfully creative piece of work, even it depending on unsupported interfaces - to do its thing via an interface we're happy to support.

Also, if this is kinda of a trick-or-treat thing, or, said in another way, "give this internal an external (and supported) interface or we'll document it", I'm all in :-)

Uh: https://gist.github.com/Whateverable/ba725edf0cc5c164101106f52e9180c2

Perhaps the only acceptable way of documenting it is to add a huge banner saying something like: "this doc is approximate, things change permanently. Refer to the source code for more details".
Basically, if the variable is just noted in the docs with the above mentioning, that'd already be sufficient as to my view.

I don't exactly envy anyone that'd need to read the code for my Type::EnumHOW module at the moment because it relies on $*W in addition to nqp, and it's not something I can avoid because the module provides sugar for generating enums dynamically, and as part of that it needs to handle the same things the compiler does when declaring an enum. While nqp is documented as being an internal feature, it wouldn't be clear to anyone that hasn't worked on Rakudo before where $*W is coming from, what it even is, or why it doesn't exist when you try to use it at runtime.
I think $*W should be documented, but with a similar disclaimer to the one use nqp has ("use at your own risk"). I think it should more heavily discourage its use than that though, because while $*W is very powerful with what it allows you to do, it's also very easy to misuse and end up with bugs that are very easy to mistake for legitimate compiler bugs. This is less of an issue when using nqp. @jnthn has the right idea with the type of disclaimer it'd need.

Based on my current understanding, once Raku AST is complete, this special variable will no longer be present.


Error on docker-compose up botfront-starter

Describe the bug
When i do the docker-compose up for the botfront-starter project, It loops with an error and it is never available.
`core_1          | :0: UserWarning: You do not have a working installation of the service_identity module: 'No module named 'service_identity''.
Please install it from https://pypi.python.org/pypi/service_identity and make sure all of its dependencies are satisfied.  Without the service_identity module, Twisted can perform only rudimentary TLS client hostname verification.  Many valid certificate/hostname mappings may be rejected.
core_1          | 2019-05-14 12:50:10 INFO     root  - Rasa process starting
core_1          | 2019-05-14 12:50:10 INFO     root  - Fetching endpoints from server
core_1          | 2019-05-14 12:50:10 DEBUG    utils  - Requesting endpoints from server
http://host.docker.internal:8081/project/my-first-project/endpoints...
core_1          | 2019-05-14 12:50:10 WARNING  utils  - Tried to fetch endpoints from server, but server response status code is 401.
core_1          | 2019-05-14 12:50:10 INFO     root  - Fetching credentials from server
core_1          | 2019-05-14 12:50:10 DEBUG    utils  - Requesting credentials from server
http://host.docker.internal:8081/project/my-first-project/credentials...
core_1          | 2019-05-14 12:50:10 WARNING  utils  - Tried to fetch credentials from server, but server response status code is 401.
core_1          | Traceback (most recent call last):
core_1          |   File "/usr/local/lib/python3.5/runpy.py", line 193, in _run_module_as_main
core_1          |     "main", mod_spec)
core_1          |   File "/usr/local/lib/python3.5/runpy.py", line 85, in _run_code
core_1          |     exec(code, run_globals)
core_1          |   File "/app/run_core.py", line 100, in
core_1          |     project_id=_endpoints.nlu.kwargs.get('project'),
core_1          | AttributeError: 'NoneType' object has no attribute 'kwargs'
botfront-starter_core_1 exited with code 1`
There is the log of my error.
To Reproduce
Steps to reproduce the behavior:
git clone http://github.com/botfront/botfront-starter
cd botfront-starter
docker-compose up
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
https://imgur.com/tl7QYJe
Thanks for the help in advance

Hey @gothax, yes that's because there is not project yet so Core restarts until the Botfront's is setup.
https://docs.botfront.io/guide/getting-started/quick-start.html#install-botfront

This is not an issue with the botfront frontend but I suspect rather with the use of host.docker.internal. Are you using the Linux version of Docker?
Rebuilding with a new Dockerfile_core removes the UserWarning given by core but did not get ride of the 401 error in my case.
...
RUN pip install -r /app/requirements.txt --no-cache-dir
RUN pip install --no-cache-dir service_identity
COPY ./core .
...

A temporary fix was to use workarounds to resolve host.docker.internal and to comment out
const project = await getVerifiedProject(projectId, req);
if (!project) throw { code: 401, error: 'unauthorized' }

in botfront-api/server/credentials/credentials.controller.js and botfront-api/server/endpoints/endpoints.controller.js.
However, when running the stack with docker-compose, changing every mention of host.docker.internal:8081 (an alias for the Docker host and the exposed port) to botfront-api:8080 (the container's name on the Docker network and the internal port) works, without rebuilding any containers.

@pheel can you share the changes you've made to make the docker compose work?
I've changed the host.docker.internal:8081 to botfront-api:8080 in local.env file but still couldn't make it work

@amitbend if you make the following two changes to local.env:
MONGO_URL=mongodb://mongo:27017/bf
BF_URL=http://botfront-api:8080

... you should be able to access the app from your browser at http://localhost:8888. From there, in Settings > More Settings > Docker Compose, change the API host URL there too. Ditto for Settings > Endpoints (botfront-api:8080, nlu:5000, actions:5055).

Hello
Thanks for your  answers.
My problem is solved, in fact, the rasa_core is not initialized while you don't init your first project on the UI.
Now it's ok.
Thanks & have a good day guys !

@gothax @amitbend @pheel
It is now working on Linux, you can run docker rmi botfront/botfront -f to remove the image and then run docker-compose up again in botfront-starter, so that it downloads the latest version of the image

Hello
Thanks for your answers.
My problem is solved, in fact, the rasa_core is not initialized while you don't init your first project on the UI.
Now it's ok.
Thanks & have a good day guys !

Can you please share how you got rid of the 401 error.


perform +summon when +play is called

would be useful to have a way to combine +play and +summon. If the caller is in a voice channel, and the bot isn't, using +play <...> would summon the bot into the voice channel and start playing in one action

I already made a feature about that
#837


Add info about Terra Groups

Perhaps as an appendix?
I lean towards leaving it out of the main Getting Started walkthrough in the interest of simplicity.  So, make an appendix, and then in the main chapters add a note that, if you've got a big lab, you may want to check out these instructions instead?
We've also previously discussed making a guide that goes more in-depth about how to organize / customize stuff for your team - alternative Billing Project setups, different types of Workspaces (e.g. "Data" workspaces), etc.  If we ever make that guide, then Groups could get discussed over there.

Agreed, seems lowish priority for this book.


DBZ-3371: Adjust scale of fallback BigDecimal values to match column schema

https://issues.redhat.com/browse/DBZ-3371

@jpechane does this look alright to you?

Test failures are unrelated, the change LGTM. It'd be nice if we could do the scale adjustment only if the fallback value actually is needed, but that'd require some larger re-work. Leaving it to @jpechane to take another look and merge. Thanks, @C0urante!

Applied, thanks @C0urante !

Thanks guys!


 Consider uploading reports for the commit e6ac75c to get more accurate results

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff              @@
##               main     #448      +/-   ##
============================================
+ Coverage     70.98%   71.06%   +0.07%
- Complexity      676      677       +1
============================================
  Files           118      118
  Lines          2547     2547
  Branches        195      195
============================================
+ Hits           1808     1810       +2
+ Misses          620      619       -1
+ Partials        119      118       -1

Flag
Coverage Δ

unittests
71.06% <ø> (+0.07%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.
see 1 file with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

👍

👍


Decorating RoutablePageMixin routes with "route_path" instead of "route" (path vs re_path)

Is your proposal related to a problem?
In migrating a Django application to a Wagtail app, I've been using RoutablePageMixin in some cases and wanting to use the newer Django django.urls.path patterns instead of the re_path to make copying the url patterns from the original application's urls.py a bit easier.
I've mentally switched away from the regular expressions for url matching and am struggling going back to using the regex's.
Describe the solution you'd like
I'd like to decorate the route with something like @route_path or have route() in routable_page/models.py have a check to see if the pattern is a regular expression or not and (RegexPattern or RoutePattern).
Describe alternatives you've considered
For now I've created a custom route_path function in /custom/routable_pages/models.py that appends a path to _routablepage_routes instead of re_path (as in stock). It looks like:
/custom/routable_page/models.py
from django.urls import path, re_path

_custom_creation_counter = 0

def route_path(pattern, name=None):
    """
    Adds a path more like the Django 2.0+ Url Dispatcher rules
    """
    def decorator(view_func):
        global _custom_creation_counter
        _custom_creation_counter += 1
        # Make sure page has _routablepage_routes attribute
        if not hasattr(view_func, '_routablepage_routes'):
            view_func._routablepage_routes = []

            view_func._routablepage_routes.append((
                path(pattern, view_func, name=(name or view_func.__name__)),
                _custom_creation_counter,
            ))
        return view_func
    return decorator

    # a copy of the stock route follows right below, included in this location for my own sanity in the global scope

and decorate the routable functions with @route_path which seems to be working so far, but just getting into it and wondering if I'm going to get burned doing things this way.
/subscribers/models.py
from myprojectname.custom.routable_page.models import route_path

class SubscribePage(RoutablePageMixin, Page):

    ....

    @route_path("subscribe/")
    def subscribe(self, request, *args, **kwargs):
        """
        Confirm the form is submitted correctly, and conditionally add
        the subscriber to the list
        """
        from subscribers.forms import SubscribeForm
        if request.method == 'POST':
            form = SubscribeForm(request.POST)
            if form.is_valid():
                form_submission = form.save(commit=False)
                ....

Additional context
Obviously, the 'try it and see' approach applies here, but wondering if there is a deeper design decision in Wagtail which would suggest to not take this direction.

I think that it would be more beginner-friendly too.
I tried to implement the second solution you proposed where  route() in routable_page/models.py checks to see if the pattern is a regular expression or not.

wondering if there is a deeper design decision in Wagtail which would suggest to not take this direction.

Wondering too.

I don't think there's a deep design decision behind it - it's just that RoutablePageMixin was created before an alternative to regexp-based paths existed, and hasn't been redesigned since then...
I'd definitely prefer using two different decorators here, rather than trying to 'guess' the type of pattern with heuristics - there's too much risk of it making the wrong choice (is /foo.bar/ a regexp or not?) and producing unexpected results that are hard to troubleshoot, especially for newer developers who started learning Django after the switch and skipped over learning about regexps. The relevant code in Django is only used to output a warning, so they can get away with just detecting the most obvious signs of a regexp - I don't think that's reliable enough to use in actual routing logic.


Export the results of 8th contest in a document

This is to keep track of the next contest entry document to be written once the 8th testing contest ends. The competition results must be added in the leaderboard as well.

[x] Write the HTML page of 8th contest
[x] Add the results to leaderboard

Contest entries page and leaderboard data published in 6f57b66.


Free account password recovery

I  have free account on insomnia and I forgot my password. I sent an email to<EMAIL_ADDRESS>and the auto reply responded with the following:
• For account and password recovery, please note that if you don't remember your old password, a password reset or account deletion is not possible at the moment, due to how account encryption works, as documented on https://docs.insomnia.rest/insomnia/security-features. Please keep your password safe.
What do I do now? I do not mind losing whatever was encrypted if any - it says that "you cannot reset it, delete the account etc."
I cannot recall where I placed a copy of the password it was over a year ago.
Do you have a "nuclear option" on your side to simply purge my account so I can start again?
Thanks,
max
Posted message to slack but no luck
Slack Message

Hi @MMirabito we are implementing at the moment some options where you will be able to unblock by yourself (e.g. still login with an email sent code and then delete/recreate your account) but it's still in private alpha. It will be released alongside a complete website revamp.
We'll update you here as soon as it's out.
In the meantime, if you need, you can create another account with the same email, just adding a +<something> at the end, eg<EMAIL_ADDRESS>

Hi @filfreire thanks for the update really appreciate  you all working on an option.
max

Is there a way to request to delete the account so we can create a new one?

Hi @filfreire has the reset password feature been enabled/fixed?
Thanks,
max

Is there a way to request to delete the account so we can create a new one?

You can delete your old account and recreate it with the email you previously deleted (but all data will deleted).

@MMirabito you should now be able to login using email code and delete your account and recreate a new one. All data will be deleted, but if you were a member of other teams/organizations, anyone with Admin permissions can reinvite your account back.

Hi @filfreire thanks for the update. I delete my account and save my passphrase then I was able to login via insomnia app.
Thanks again,
max


Failure to compile without gtk3-dev installed

When trying to run the project I get the following error:
/home/keith/github/pixi/src/deps/nfd-zig/nativefiledialog/src/nfd_gtk.c:1:1: error: unable to build C object: clang exited with code 1
error: nfd...
error: The following command exited with error code 1:
/home/keith/apps/zig-linux-x86_64-0.10.0/zig build-lib /home/keith/github/pixi/src/deps/nfd-zig/src/lib.zig -cflags -Wall -- /home/keith/github/pixi/src/deps/nfd-zig/nativefiledialog/src/nfd_common.c -cflags -Wall -- /home/keith/github/pixi/src/deps/nfd-zig/nativefiledialog/src/nfd_gtk.c -lc -latk-1.0 -lgdk-3 -lgtk-3 -lglib-2.0 -lgobject-2.0 --cache-dir /home/keith/github/pixi/zig-cache --global-cache-dir /home/keith/.cache/zig --name nfd -static -I /home/keith/github/pixi/src/deps/nfd-zig/nativefiledialog/src/include --enable-cache
error: the following build command failed with exit code 1:
/home/keith/github/pixi/zig-cache/o/82d56624fe6eb18572bc1eeb3f795282/build /home/keith/apps/zig-linux-x86_64-0.10.0/zig /home/keith/github/pixi /home/keith/github/pixi/zig-cache /home/keith/.cache/zig run

Maybe you can add gtk-3 requirement in README?

Thank you for the issue! I don't currently have a Linux machine for testing so this is really helpful. I wish I could get by without the user to have to have anything outside of what zig-gamedev requires.

Well, I guess the solution is to add the GTK headers to https://github.com/foxnne/nfd-zig so it can build. It will still need to link to GTK at runtime but that shouldn't be an issue for most people. I can look into it this week and submit a PR if you're happy with that.

That would be amazing but if you don't want to and think it's better to require the user to install it, I can just document it.

Keeping the requirement to install gtk+3-devel (Or equivalent) seems to be the best option sadly.
I wrote the necessary c definitions so that gtk.h could be removed, but it still doesn't compile because it can't find libgtk+3.so to link to. I'm not completely sure how the whole system is supposed to work, because I have libgtk+3.so.0 installed on my system, but it doesn't match due to the version suffix. If I just symlink libgtk+3.so.0 => libgtk+3.so it works fine, but that's obviously not a good solution.
I think the only thing the devel package is doing to allow it to link, is adding definitions for pkg-config to use to find the correct file.
Anyways, seems like it's doable, but probably not worth the effort.

Understood, thanks so much for looking into this! I'll get a note added to the readme for Linux users.


Old value on custom types for checking if value changed before proceeding with expensive operations

Is your feature request related to a problem? Please describe.
Say I want a custom PasswordType and I want to make sure the string gets encrypted, I would do something like this:
[...]
convertToDatabaseValue(value: string,  platform: Platform): string {
  return bcrypt.hashSync(value, 10);
}
convertToJSValue(value: string, platform: Platform): string {
  return value;
}
[...]

But to prevent re-encryption of the already encrypted password, I would need to check somehow if the value is a encrypted string (which is not really perfectly possible) or the value has changed, to prevent re-encryption on every update.
Describe the solution you'd like
Maybe we could add the old value in params so we have something like convertToDatabaseValue(newValue: string, oldValue: string, platform: Platform): string
Describe alternatives you've considered
Alternative could be a transformer method on properties to transform values like this:
export class PasswordTransformer implements ValueTransformer {
  to(value: string) {
    return bcrypt.hashSync(value, 10);
  }
  from(value: string) {
    return value;
  }
}

And on the property decorator we could have @Property({ transformer: new PasswordTransformer() })
This method should only ever be called when setting a new value to this property or retrieving it. So it should only ever encrypt when setting a new password and not re-encrypt it when not updated.

I don't think custom types are good fit for this. And tbh I would expect the transformers to work the same.
The request on its own does not make sense to me, you ask for "old value", but old value is already encrypted, you would be in the very same position as with custom types, right?
Personally I would just use a setter (User.changePassword(pw: string): void or something like that, it could also verify old password if provided...), or you could use lifecycle hooks (@BeforeCreate and @BeforeUpdate), as there you have the change set object from which you can tell whether the value changed and encrypt it from there. Also hooks can be async.
https://mikro-orm.io/docs/lifecycle-hooks/#eventargs

@B4nan

The request on its own does not make sense to me, you ask for "old value", but old value is already encrypted, you would be in the very same position as with custom types, right?

Yes, the old value is already encrypted, that's right. If the property would be updated with a new password (in clear text) it would be encrypted again as we could check if it differs from the old, encrypted value. Otherwise it would not be re-encrypted if it hasn't changed at all. If we would have access to the old value and the new value of the property we could do something like this:
if (newValue !== oldValue) return bcrypt.hashSync(newValue, 10);
else return newValue;

Personally I would just use a setter (User.changePassword(pw: string): void or something like that, it could also verify old password if provided...)

The use case for this feature request is going further than just making sure passwords are stored encrypted. There are many other use cases like e.g. hashing JWT refresh tokens, formatting numbers / strings or other things normally a transformer can be used for. BTW: A transformer just makes sure how values are received or stored in the database, so its already a bit like custom types are implemented right now, it's just missing a way to make sure it does not fire every time, even if the value was not changed at all.
With a transformer you can be sure to have a DRY way of storing a password encrypted, without needing to have an extra subroutine which has to be called on every password change. Same for every other use case where you need to reformat the value with expensive or one-time operations.

or you could use lifecycle hooks (@BeforeCreate and @BeforeUpdate), as there you have the change set object from which you can tell whether the value changed and encrypt it from there. Also hooks can be async.

This would also be called with every update of any of the entity properties. Additonally this seems to be more for entity level operations as to property level operations. A more appropriate place for something like this would probably be the onUpdate() method of the @Property decorator, but it seems like we don't have access to the changeset in there and it is also fired on every entity update instead of just the update of the decorated property, which makes it basically the same as @BeforeUpdate.

If we would have access to the old value and the new value of the property we could do something like this:
if (newValue !== oldValue) return bcrypt.hashSync(newValue, 10);

This would not work, as newValue is not encrypted but the oldValue is. You would have to compare hashes, which is the costly operation you are trying to get around.

This would also be called with every update of any of the entity properties.

Yes, and you would have one simple if condition to check if the pw was changed or not.

Additonally this seems to be more for entity level operations as to property level operations. A more appropriate place for something like this would probably be the onUpdate() method of the @Property decorator, but it seems like we don't have access to the changeset in there and it is also fired on every entity update instead of just the update of the decorated property, which makes it basically the same as @BeforeUpdate.

onUpdate is called every time the entity is updated, its the same as with hooks.

@B4nan

This would not work, as newValue is not encrypted but the oldValue is. You would have to compare hashes, which is the costly operation you are trying to get around.

No, I am not comparing hashes here, I am basically just comparing strings to avoid re-encrypting or re doing a costly operation or basically any other one time format of e.g. a primitive type where you want to bringt it in some specific format only once, without reformating it every time on every update.

onUpdate is called every time the entity is updated, its the same as with hooks.

Thats what I'm saying. Would it be possible to have the changeset as param in the onUpdate() method too, same as in @BeforeUpdate? Does onUpdate fire on initial inserts too? Else this would not be a good DRY style, as we would need to handle it in @BeforeUpdate and @BeforeInsert which makes this just feel hacky, opposed to just a single transformer / custom type on a property.

No, I am not comparing hashes here, I am basically just comparing strings to avoid re-encrypting or re doing a costly operation or basically any other one time format of e.g. a primitive type where you want to bringt it in some specific format only once, without reformating it every time on every update.

New value is always unencrypted, old value is always encrypted, so again, you cannot compare those without hashing the new value.

Else this would not be a good DRY style, as we would need to handle it in @BeforeUpdate and @BeforeInsert which makes this just feel hacky, opposed to just a single transformer / custom type on a property.

You can use both decorators on the same method.

@B4nan

New value is always unencrypted, old value is always encrypted, so again, you cannot compare those without hashing the new value.

I suppose the convertToDatabaseValue() method of a custom type is only fired when flushing to db and the convertToJsValue() method is only fired when retrieving from db?
So if I get a user from db I have an encrypted user.password. If I don't change the user.password like this user.password = '123456', both new value and old value in convertToDatabaseValue() would be the same string (newValue = 'hashedstring'; oldValue = 'hashedstring'). They would only differ, if I set a new clear text password with user.password = '123456'; (`newValue = '123456'; oldValue = 'hashedstring').

Yeah right, I got confused by the discussion about custom types. Custom types are really not a good fit for this, using hooks is what you want - that check for old value is exactly what happens inside UoW.
I still feel like using Property.onUpdate() for this is wrong (it is not the purpose why the method is there), but I am not opposed to having the full changeset object as second parameter (so we maintain BC). Feel free to send a PR, the place where it's executed is ChangeSetPersister.processProperty().

Yeah, I guess onUpdate() is not the right place for something like this, because it does not fire on inserts, does it? I guess I will fall back to beforeUpdate and beforeCreate. Just thought it would be a nice and concise way to also have the changeset or the old / new value to make these checks for one-time conversions in custom types.

Facing similar problem. Is there any way to tell if certain field was updated or not before going with some operation like encryption
	@BeforeCreate()
	@BeforeUpdate()
	async hashPassword() {
		 console.log(this)
		this.password = await HelperService.hashString(this.password);
	}

``

I am using like this . Problem occurs when I am doing updates, it rehashes the password

You should get an event args in the first parameter, with a change set available, so you can see what changed from that (it will be in the payload)
https://mikro-orm.io/docs/events#eventargs

Cool. For anyone bumping into similar issue, here is how i fixed it
	@BeforeCreate()
	@BeforeUpdate()
	async hashPassword(args: EventArgs<this>) {
		if(args.changeSet.payload?.password) {
			this.password = await HelperService.hashString(this.password);
		}
	}

Thanks @B4nan for the quick reply as always


initial work for hashing passwords

Passwords are hashed when created and updated (i.e., if changed). Files affected routes, test_routes, features.

LGTM! Merging.


Can't get rid of warnings

Hi,
I'm completely new with WinUX.UWP.
Installed all the packages from NuGet. (Common, UWP, Xaml and Xaml.Controls)
I'm using the ValidatingTextBox, but I can't get rid of the following warning:
Could not load file or assembly 'WinUX.Common, Version=2.0.16271.3, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The bound assembly has a version that is lower than that of the request. (Exception from HRESULT: 0x80132000)
Greetings,
Steven

I'll investigate this issue and get back to you ASAP

@jsrijkee could you provide some more information about this issue. As a quick test, I created a blank UWP app and added all the packages from NuGet, added the ValidatingTextBox to the MainPage and it appears to be working okay.

Hi James,
I must have done something wrong, because everything is working now properly.
Thank you for your reply.
Groeten,
Steven Rijkee

0621517003

<EMAIL_ADDRESS>

Van: James Croft<EMAIL_ADDRESS>Verzonden: dinsdag 18 oktober 2016 12:42
Aan: jamesmcroft/WinUX-UWP-Toolkit<EMAIL_ADDRESS>CC: jsrijkee<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Onderwerp: Re: [jamesmcroft/WinUX-UWP-Toolkit] Can't get rid of warnings (#14)
@jsrijkee https://github.com/jsrijkee  could you provide some more information about this issue. As a quick test, I created a blank UWP app and added all the packages from NuGet, added the ValidatingTextBox to the MainPage and it appears to be working okay.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/jamesmcroft/WinUX-UWP-Toolkit/issues/14#issuecomment-254471262 , or mute the thread https://github.com/notifications/unsubscribe-auth/AJULiN02Z5vRfkpTQnsKqgXoI4Al3MDSks5q1KJ4gaJpZM4KW3gT .


Port AccessControlList from Hyrax

@no-reply Nice! Thanks.
@marrus-sh @VivianChu Do we want to merge it now?

@marrus-sh i think this is ready for your re-review

@no-reply I think I’d still rather #<< throw an error when provided a non‐nil access_to which doesn’t match the resource id, but otherwise this looks good to me.


Add support for exponentiation and parentheses usage

Currently only the basic operators '+ - / *' are implemented for calculation in the parser.

Added parentheses precedence for expressions (d1702d96b2a7862c60aa97c59de513890992f065) and tree generation (0ef6db596f2a8f4dc5d76cdb0d0c70e534dcf28b)


Counter for Retry Policies on Envoy Proxy

(This is used to request new product features, please visit https://discuss.istio.io for questions on using Istio)
Describe the feature request
I think the capability to export metrics/counter based on envoy retry policies can be very useful for improve envoy observability. For example, for instance, retry count and condition.
Example on istio_requests_total we have a response_flags tag, we can be enhance this metrics with a retry_count propertie.
Affected product area (please put an X in all that apply)
[ ] Ambient
[ ] Docs
[ ] Dual Stack
[ ] Installation
[x] Networking
[ ] Performance and Scalability
[x] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Affected features (please put an X in all that apply)
[ ] Multi Cluster
[ ] Virtual Machine
[ ] Multi Control Plane
Additional context

you can do it yourselft whit Telemetry API or EnvoyFilter, I don't think it should be on by default.


Make dataset origin immutable

Do not allow dataset origin to be changed and restrict the enumeration to just external or managed. Uploading archives should be possible for both kind of datasets.

plus maybe release as an origin so we can easily distinguish datasets actively worked on from immutable ones

Its of course possible.
Just wondering, couldnt it be confusing looking at an external dataset and believing this is the data as it came from a source, but actually someone uploaded an archive?

Yes. It is confusing now also that you can change the origin. Make it uploaded, upload data, change to sth else.
Maybe uploading should only be supported for managed datasets?

I like the idea of the external, managed, and release datasets. I see your point about  it being confusing to override the external URL with an upload. It seems like uploading should be possible for external datasets though, because uploaded files are by definition external. Maybe the backend should hide the URL when it is overridden with an upload, or there should be a warning next to it?
We might need to temporarily replace a external URL dataset with an upload and test assembly, particularly in coming months when we are working on testing the automated GSDs (WoRMS, PARIS, etc.). Ideally, the URL would be kept in the dataset registration instead of having to go back and re-register the URL again.

thats what I had thought. So lets simply allow uploads to both, but maybe indicate in an import metric how the specific import was done (url or upload file name). Then its traceable

The imports do have an origin now


Possible breaking change around 3.6.2

Environment

Elixir version (elixir -v): 1.12.0
Database and version (PostgreSQL 9.4, MongoDB 3.2, etc.): PG11
Ecto version (mix deps): 3.6.2
Database adapter and version (mix deps): postgrex 0.15.9
Operating system: docker alpine

Current behavior
before 3.6.2 something like this, when a is nil, would not raise:
Repo.update_all((from x in App.X, where: x.a == ^a), set: [b: b])

it raises now
Expected behavior
Not sure what to expect. I think the error is good, but it seems to be a breaking change.
I have updated my own code to avoid injecting nil

Yeah given this prevents nil injections we consider this a security fix and so not under compatibility promise. Thanks!

Thanks for the quick response!


Get subset by range

The API could be:
def filter_range(set, min \\ nil, max \\ nil) -> list of members

I think filter is too similar to Enum.filter/2, one would expect it to take a function.
Also I think min and max should be inclusive by default, exclusive bounds may be specified with tuples: SortedSet.filter_range(set, {10, :exclusive}, {20, :inclusive})


Add more prometheus metrics

Description
This PR adds any missing metrics for the tapd monitoring package based on this comment
Specifically, in this PR we add:

Asset proof collector: gather a vector for all proof sizes, with script key as the identifier
DB collector: gathers db related data, currently only gathering the total db size

@roasbeef: review reminder

@roasbeef: review reminder


Need multiple languages support for multiple threads

One scenario is for serving web requests with different languages. It seems domainManager is not exported and only defaultDomainManager can be used. It would be nice to export domainManager or have some way to allow different  clients/threads to have different domainManger with its own locale.

fixed in https://github.com/chai2010/gettext-go/releases/tag/v1.0.0-alpha.0
	zh := gettext.New("hello", "./examples/locale").SetLanguage("zh_CN")
	fmt.Println(zh.Gettext("Hello, world!"))

	en := gettext.New("hello", "./examples/locale").SetLanguage("en")
	fmt.Println(en.Gettext("Hello, world!"))


Things Beta date format change

Hey, just a heads up: In mid-March, the beta made several changes in the db. Several seem to just be renamed columns, but I've been banging my head on the encoding of startDate and thought I'd share what I found in case it's helpful when they roll this out to a release version. In Javascript:
// task with a startDate of Apr 9, 2023 = 132596864
const parseStartDate = (startDate) => {
  const DAYS = 128;
  const MONTHS = 32 * DAYS;
  const YEARS = 16 * MONTHS;

  let year = Math.floor(startDate / YEARS);
  startDate -= year * YEARS;
  let month = Math.floor(startDate / MONTHS);
  startDate -= month * MONTHS;
  let day = Math.floor(startDate / DAYS);

  console.log(year, month, day);
  return new Date(year, month - 1, day);
};

Sorry for the issue, feel free to close it. Just wanted to pass this along, as I've used this codebase to understand several things about the Things database.

Thanks for pointing this out, @NickChristensen.  Definitely saved me some time in debugging a python script of mine after the Database change in the latest update.  Do you know what format the 'reminderTime' is stored in?  For a task with a reminder set at 5:38pm on 4/11/23, I get the timestamp value in the database of<PHONE_NUMBER>.  Running that through your function doesn't give the expected output, and I'm not familiar enough with what date format they're using to understand what else it might be.  If you have moment to shed some light on it I'd really appreciate it.

I don't have any insight there, sorry. I'd suggest creating several todos and looking at their reminderTime in the database to infer patterns. I started with 1 day apart, 10 days apart, etc, then eventually noticed a discrepancy across month and year thresholds. Sorry I couldn't be more help!

@NickChristensen - No worries.  Fortunately a little head scratching and a lot of being guided by your function made me realize that they're actually not storing a full date as the reminder time, but rather an offset from midnight of the startDate.  This is the function I came up with to convert (in Python, but essentially the exact same logic) which can then be added to the startDate:
def convert_new_style_database_time(db_time, as_string = True, with_timezone_offset = True):
    """Convert from the new style database time introduced in April 2023 to a time object"""
    # FROM: https://github.com/thingsapi/things.py/issues/98
    # Convert timestamp to datetime
    if db_time is None:
        return None
    SECONDS = 8192
    MINUTES = 128 * SECONDS
    HOURS = 64 * MINUTES

    hour = math.floor(db_time / HOURS)
    db_time -= hour * HOURS
    minute = math.floor(db_time / MINUTES)
    db_time -= minute * MINUTES
    second = math.floor(db_time / SECONDS)
    # Retutnr a datetime object just with time
    time = datetime(1, 1, 1, hour, minute, second).time()
    return time

Wow, good find!

@NickChristensen Thanks for sharing. I'm glad to hear the code was helpful on your learning journey. As for fixing the new start_date in the code, might you give me some more examples like "Apr 9, 2023 = 132596864" that you find in your database? I can't check here, since I don't have the new Things yet.
@hlipnick 🙂. Do you think it would make sense to include reminder_time in the things.py output?

time = datetime(1, 1, 1, hour, minute, second).time()

Note, if you don't want to travel back to year 1, you can also do
>>> import datetime
>>> datetime.time(hour, minute, second)

Also, if either of you could run

import things
things.Database().get_version()

the would help me know what version the change is at. (I'm at version 21 here.)

You bet! I'm away from a computer for about a week, but if someone doesn't beat me to it I'd be happy to provide more test values.

Thanks for the analysis. Have you figured out how to query the new startDate with SQL? E.g., see https://github.com/thingsapi/things.py/blob/main/things/database.py#L711

@NickChristensen Thanks to your post, I was able to implement a fix. Details in commit https://github.com/thingsapi/things.py/commit/e64bea80c0b7c065dcc51c25744dbf5a9b7fcb60.
If you run the development version of things.py with the print_sql=True flag, you can see what's going on:
SELECT date(
    CASE
        WHEN TASK.startDate
    THEN
        format(
            '%d-%02d-%02d',
            (TASK.startDate & 134152192) >> 16,
            (TASK.startDate & 61440) >> 12,
            (TASK.startDate & 3968) >> 7
        )
    ELSE
        TASK.startDate
    END
) AS start_date
FROM TMTask AS TASK

Thank you all for the analysis, and thank you for sharing your solution @mikez! Super helpful, as I too was pulling my hair out!
FYI I was able to apply the same query change for TMTask.deadline dates as well, over in my project.

as I too was pulling my hair out!

might make sense to use our library then ;)

@chrisgurney Thanks for chiming in. I took a look at things2md!
If you'd enjoy to do so, how about refactoring things2md to use things.py for the SQL fetches? That way, we can all support each other when things break next time—as opposed to us all having individual code-bases.
For example, query_subtasks (in your code) is a bit like:
def query_subtasks(task_ids):
    return [things.get(task_id)['checklist'] for task_id in task_ids]

Happy to guide and answer questions if you chose to join our little things.py community. :)

@mikez Good suggestion, thanks. If time allows in my next major revision -- or if Things4 comes along and breaks everything --- I'll definitely look into it. :)


constructor files directly present in the src folder are deleted and constructor files are moved into the constructor folder

All good :smiley:


Support Bootstrap 4

Since the first Bootstrap 4 Beta shipped bootstrap-validate should support the latest branch.

Support for Bootstrap v4 will happen in the 2.x branch


Rename (qubits+cbits) to labels

Follow-up to #4627 that renames diagram lines from "qubits" to "labels", since they now contain control keys as well.

@95-martin-orion ping this should be quick


two modifications

Fix errors when setting "Morph_flag = True".

Thanks for PR.
Just in case if your are using this code, there was an error on my cart2pol function, rho and phi were switched on the return value and the results were wrong. The actual version is fixed.


feat(go): add support for bumping a Go version file

how can i enable this? it looks like it doesn't give the functionality by default when i set "release-type": "go", "version-file": "./version/version.go" in the manifest.json. not sure what configuration i need to enable this.

hi, GMN


What are the minimum system requirements?

I have a gaming laptop with 24GB of RAM and Nvidia GEFORCE GTX 1650.  I read on Tom's Hardware that this is not even close to being enough.  Is this true?  Can the Readme be updated to show this information?

To finetune 7b qlora you need at least 16GB GPU RAM. So you need something like 3090 or greater.
To finetune 3b models you can use google colab with no problems


[Failed] Apply fix for UA0005: Do not use HttpContext.Current

[x ] Include the log file upgrade-assistant.clef that is produced in the working directory
please see upgrade-assistant.log file attached bellow

Describe the bug
When running the upgrade command there was an Unexpected error applying step being thrown
To Reproduce

Exceptions (if any)
[14:22:58 INF] Applying upgrade step Apply fix for UA0005: Do not use HttpContext.Current
[14:22:58 ERR] Unexpected error applying step
System.ArgumentNullException: Value cannot be null. (Parameter 'document')
   at Microsoft.DotNet.UpgradeAssistant.Steps.Source.CodeFixerStep.TryFixDiagnosticAsync(Diagnostic diagnostic, Document document, CancellationToken token)
   at Microsoft.DotNet.UpgradeAssistant.Steps.Source.CodeFixerStep.ApplyImplAsync(IUpgradeContext context, CancellationToken token)
   at Microsoft.DotNet.UpgradeAssistant.UpgradeStep.ApplyAsync(IUpgradeContext context, CancellationToken token) in /_/src/common/Microsoft.DotNet.UpgradeAssistant.Abstractions/UpgradeStep.cs:line 178

Further technical details

Windows version and bitness info (32-bit or 64-bit)
Windows 10 enterprise, 10.0.19042, 64 bit

Include the output of dotnet --list-sdks
2.1.802 [C:\Program Files\dotnet\sdk]
2.2.300 [C:\Program Files\dotnet\sdk]
3.0.100 [C:\Program Files\dotnet\sdk]
3.1.108 [C:\Program Files\dotnet\sdk]
5.0.402 [C:\Program Files\dotnet\sdk]

Include the output of upgrade-assistant --version
0.3.252501+d008dcd65150d4d24cdeb8378cc517cc5b121b2

File attachments
upgrade-assistant.log

Bump. Same issue.

Bump. Same. Trying to use the HttpContextHelper.cs class to access the HttpContext in both .NET Framework and .NET Standard.
`using System;
using System.Diagnostics;
#if NET || NETCOREAPP
using Microsoft.AspNetCore.Http;
#else
using System.Web;
#endif
namespace ReferralRock.MiddleTier
{
///
/// Temporary helper class for retrieving the current  . This temporary
/// workaround should be removed in the future and  should be retrieved
/// from the current controller, middleware, or page instead.
#if NET || NETCOREAPP
///
/// If working in another component, the current  can be retrieved from an
/// retrieved via dependency injection.
#endif
///
internal static class HttpContextHelper
{
private const string Message = "Prefer accessing HttpContext via injection";
    /// <summary>
    /// Gets the current <see cref="HttpContext"/>. Returns <c>null</c> if there is no current <see cref="HttpContext"/>.
    /// </summary>

#if NET || NETCOREAPP
#if NET5_0_OR_GREATER
[Obsolete(Message, error: false, DiagnosticId = "HttpContextCurrent", UrlFormat = "https://docs.microsoft.com/en-us/aspnet/core/fundamentals/http-context")]
#else
[Obsolete(Message, error: false)]
#endif
public static HttpContext Current => HttpContextAccessor.HttpContext;
    private static readonly HttpContextAccessor HttpContextAccessor = new HttpContextAccessor();

#else
#pragma warning disable UA0005 // Do not use HttpContext.Current
[Obsolete(Message, error: false)]
public static HttpContext Current => HttpContext.Current;
#pragma warning restore UA0005 // Do not use HttpContext.Current
#endif
}
}
`

I am unable to reproduce after the following:

Create blank .NET Framework 4.7.2 project
Add new Debug config w/ NETCOREAPP symbol
Add references to System.Web and the Microsoft.AspNetCore.Http nupkg

I ran UA analyze and got the following output:
Microsoft.DotNet.UpgradeAssistant.Cli.exe analyze .\ClassLibrary1.sln
-----------------------------------------------------------------------------------------------------------------
Microsoft .NET Upgrade Assistant v0.4.0-dev

We are interested in your feedback! Please use the following link to open a survey: https://aka.ms/DotNetUASurvey
-----------------------------------------------------------------------------------------------------------------

[16:58:05 INF] Loaded 8 extensions
[16:58:15 INF] Using MSBuild from C:\Program Files\dotnet\sdk\6.0.400\
[16:58:15 INF] Using Visual Studio install from C:\Program Files\Microsoft Visual Studio\2022\PubPreview [v17]
[16:58:24 INF] Writing output to C:\s\scratch\ClassLibrary1\AnalysisReport.sarif
[16:58:24 INF] Recommending executable TFM net6.0 because the project builds to a web app
[16:58:24 INF] Marking assembly reference System.Web for removal based on package mapping configuration ASP.NET
[16:58:24 INF] Adding framework reference Microsoft.AspNetCore.App based on package mapping configuration ASP.NET
[16:58:25 INF] Reference to .NET Upgrade Assistant analyzer package (Microsoft.DotNet.UpgradeAssistant.Extensions.Default.Analyzers, version 0.4.336902) needs to be added
[16:58:26 INF] Running analyzers on ClassLibrary1
[16:58:27 INF] Identified 1 diagnostics in project ClassLibrary1
[16:58:27 INF] Diagnostic UA0005 with the message HttpContext does not have a Current property; get the context from a controller or use HttpContextAccessor instead. generated
[16:58:27 INF] Analysis Complete, the report is available at C:\s\scratch\ClassLibrary1\AnalysisReport.sarif

I then ran UA upgrade which passed w/o issue:
output
Microsoft.DotNet.UpgradeAssistant.Cli.exe upgrade .\ClassLibrary1.sln --non-interactive
-----------------------------------------------------------------------------------------------------------------
Microsoft .NET Upgrade Assistant v0.4.0-dev

We are interested in your feedback! Please use the following link to open a survey: https://aka.ms/DotNetUASurvey
-----------------------------------------------------------------------------------------------------------------

[17:02:26 INF] Loaded 8 extensions
[17:02:28 INF] Using MSBuild from C:\Program Files\dotnet\sdk\6.0.400\
[17:02:28 INF] Using Visual Studio install from C:\Program Files\Microsoft Visual Studio\2022\PubPreview [v17]
[17:02:30 INF] Loading upgrade progress file at C:\s\scratch\ClassLibrary1\.upgrade-assistant
[17:02:31 INF] Initializing upgrade step Back up project

[17:02:31 INF] Applying upgrade step Back up project
[17:02:31 INF] Backing up C:\s\scratch\ClassLibrary1\ClassLibrary1 to C:\s\scratch\ClassLibrary1.backup\ClassLibrary1
[17:02:31 INF] Project backed up to C:\s\scratch\ClassLibrary1.backup\ClassLibrary1
[17:02:31 INF] Upgrade step Back up project applied successfully
[17:02:31 INF] Initializing upgrade step Convert project file to SDK style

[17:02:31 INF] Applying upgrade step Convert project file to SDK style
[17:02:31 INF] Converting project file format with try-convert, version 0.4.0-dev
[17:02:31 INF] Recommending executable TFM net6.0 because the project builds to a web app
C:\s\scratch\ClassLibrary1\ClassLibrary1\ClassLibrary1.csproj contains a reference to System.Web, which is not supported on .NET Core. You may have significant work ahead of you to fully port this project.
[17:02:34 INF] Converting project C:\s\scratch\ClassLibrary1\ClassLibrary1\ClassLibrary1.csproj to SDK style
[17:02:37 INF] Project file converted successfully! The project may require additional changes to build successfully against the new .NET target.
[17:02:39 INF] Upgrade step Convert project file to SDK style applied successfully
[17:02:40 INF] Initializing upgrade step Clean up NuGet package references
[17:02:40 INF] Initializing upgrade step Duplicate reference analyzer
[17:02:40 INF] Marking package System.ComponentModel.Annotations, Version=4.5.0 for removal because it is referenced elsewhere in the project with a higher version
[17:02:41 INF] Initializing upgrade step Remove package 'System.ComponentModel.Annotations'

[17:02:41 INF] Applying upgrade step Remove package 'System.ComponentModel.Annotations'
[17:02:41 INF] Removing outdated package reference: System.ComponentModel.Annotations, Version=4.5.0
[17:02:41 INF] Upgrade step Remove package 'System.ComponentModel.Annotations' applied successfully
[17:02:41 INF] Applying upgrade step Duplicate reference analyzer
[17:02:41 INF] Upgrade step Duplicate reference analyzer applied successfully
[17:02:41 INF] Initializing upgrade step Package map reference analyzer
[17:02:41 INF] No package updates needed
[17:02:41 INF] Initializing upgrade step Target compatibility reference analyzer
[17:02:41 INF] No package updates needed
[17:02:41 INF] Initializing upgrade step Upgrade assistant reference analyzer
[17:02:42 INF] Reference to .NET Upgrade Assistant analyzer package (Microsoft.DotNet.UpgradeAssistant.Extensions.Default.Analyzers, version 0.4.336902) needs to be added
[17:02:42 INF] Initializing upgrade step Add package 'Microsoft.DotNet.UpgradeAssistant.Extensions.Default.Analyzers'

[17:02:42 INF] Applying upgrade step Add package 'Microsoft.DotNet.UpgradeAssistant.Extensions.Default.Analyzers'
[17:02:42 INF] Adding package reference: Microsoft.DotNet.UpgradeAssistant.Extensions.Default.Analyzers, Version=0.4.336902
[17:02:42 INF] Upgrade step Add package 'Microsoft.DotNet.UpgradeAssistant.Extensions.Default.Analyzers' applied successfully
[17:02:42 INF] Applying upgrade step Upgrade assistant reference analyzer
[17:02:42 INF] Upgrade step Upgrade assistant reference analyzer applied successfully
[17:02:43 INF] Initializing upgrade step Windows Compatibility Pack Analyzer
[17:02:43 INF] No package updates needed
[17:02:43 INF] Initializing upgrade step MyDotAnalyzer reference analyzer
[17:02:43 INF] No package updates needed
[17:02:43 INF] Initializing upgrade step Newtonsoft.Json reference analyzer
[17:02:43 INF] No package updates needed
[17:02:43 INF] Initializing upgrade step Windows App SDK package analysis
[17:02:43 INF] No package updates needed
[17:02:43 INF] Initializing upgrade step Transitive reference analyzer
[17:02:43 INF] Initializing upgrade step Remove package 'Microsoft.AspNetCore.Http.Abstractions'

[17:02:43 INF] Applying upgrade step Remove package 'Microsoft.AspNetCore.Http.Abstractions'
[17:02:43 INF] Removing outdated package reference: Microsoft.AspNetCore.Http.Abstractions, Version=2.2.0
[17:02:43 INF] Upgrade step Remove package 'Microsoft.AspNetCore.Http.Abstractions' applied successfully
[17:02:43 INF] Initializing upgrade step Remove package 'Microsoft.AspNetCore.Http.Features'

[17:02:43 INF] Applying upgrade step Remove package 'Microsoft.AspNetCore.Http.Features'
[17:02:43 INF] Removing outdated package reference: Microsoft.AspNetCore.Http.Features, Version=2.2.0
[17:02:43 INF] Upgrade step Remove package 'Microsoft.AspNetCore.Http.Features' applied successfully
[17:02:43 INF] Initializing upgrade step Remove package 'Microsoft.AspNetCore.WebUtilities'

[17:02:43 INF] Applying upgrade step Remove package 'Microsoft.AspNetCore.WebUtilities'
[17:02:43 INF] Removing outdated package reference: Microsoft.AspNetCore.WebUtilities, Version=2.2.0
[17:02:43 INF] Upgrade step Remove package 'Microsoft.AspNetCore.WebUtilities' applied successfully
[17:02:43 INF] Initializing upgrade step Remove package 'Microsoft.Extensions.DependencyInjection.Abstractions'

[17:02:43 INF] Applying upgrade step Remove package 'Microsoft.Extensions.DependencyInjection.Abstractions'
[17:02:43 INF] Removing outdated package reference: Microsoft.Extensions.DependencyInjection.Abstractions, Version=2.2.0
[17:02:43 INF] Upgrade step Remove package 'Microsoft.Extensions.DependencyInjection.Abstractions' applied successfully
[17:02:43 INF] Initializing upgrade step Remove package 'Microsoft.Extensions.ObjectPool'

[17:02:43 INF] Applying upgrade step Remove package 'Microsoft.Extensions.ObjectPool'
[17:02:43 INF] Removing outdated package reference: Microsoft.Extensions.ObjectPool, Version=2.2.0
[17:02:43 INF] Upgrade step Remove package 'Microsoft.Extensions.ObjectPool' applied successfully
[17:02:43 INF] Initializing upgrade step Remove package 'Microsoft.Extensions.Options'

[17:02:43 INF] Applying upgrade step Remove package 'Microsoft.Extensions.Options'
[17:02:43 INF] Removing outdated package reference: Microsoft.Extensions.Options, Version=2.2.0
[17:02:43 INF] Upgrade step Remove package 'Microsoft.Extensions.Options' applied successfully
[17:02:44 INF] Initializing upgrade step Remove package 'Microsoft.Extensions.Primitives'

[17:02:44 INF] Applying upgrade step Remove package 'Microsoft.Extensions.Primitives'
[17:02:44 INF] Removing outdated package reference: Microsoft.Extensions.Primitives, Version=2.2.0
[17:02:44 INF] Upgrade step Remove package 'Microsoft.Extensions.Primitives' applied successfully
[17:02:44 INF] Initializing upgrade step Remove package 'Microsoft.Net.Http.Headers'

[17:02:44 INF] Applying upgrade step Remove package 'Microsoft.Net.Http.Headers'
[17:02:44 INF] Removing outdated package reference: Microsoft.Net.Http.Headers, Version=2.2.0
[17:02:44 INF] Upgrade step Remove package 'Microsoft.Net.Http.Headers' applied successfully
[17:02:44 INF] Initializing upgrade step Remove package 'System.Buffers'

[17:02:44 INF] Applying upgrade step Remove package 'System.Buffers'
[17:02:44 INF] Removing outdated package reference: System.Buffers, Version=4.5.0
[17:02:44 INF] Upgrade step Remove package 'System.Buffers' applied successfully
[17:02:44 INF] Initializing upgrade step Remove package 'System.Memory'

[17:02:44 INF] Applying upgrade step Remove package 'System.Memory'
[17:02:44 INF] Removing outdated package reference: System.Memory, Version=4.5.1
[17:02:44 INF] Upgrade step Remove package 'System.Memory' applied successfully
[17:02:44 INF] Initializing upgrade step Remove package 'System.Numerics.Vectors'

[17:02:44 INF] Applying upgrade step Remove package 'System.Numerics.Vectors'
[17:02:44 INF] Removing outdated package reference: System.Numerics.Vectors, Version=4.4.0
[17:02:44 INF] Upgrade step Remove package 'System.Numerics.Vectors' applied successfully
[17:02:44 INF] Initializing upgrade step Remove package 'System.Runtime.CompilerServices.Unsafe'

[17:02:44 INF] Applying upgrade step Remove package 'System.Runtime.CompilerServices.Unsafe'
[17:02:44 INF] Removing outdated package reference: System.Runtime.CompilerServices.Unsafe, Version=4.5.1
[17:02:44 INF] Upgrade step Remove package 'System.Runtime.CompilerServices.Unsafe' applied successfully
[17:02:44 INF] Initializing upgrade step Remove package 'System.Text.Encodings.Web'

[17:02:44 INF] Applying upgrade step Remove package 'System.Text.Encodings.Web'
[17:02:44 INF] Removing outdated package reference: System.Text.Encodings.Web, Version=4.5.0
[17:02:44 INF] Upgrade step Remove package 'System.Text.Encodings.Web' applied successfully
[17:02:44 INF] Applying upgrade step Transitive reference analyzer
[17:02:44 INF] Upgrade step Transitive reference analyzer applied successfully
[17:02:44 INF] Applying upgrade step Clean up NuGet package references
[17:02:44 INF] Upgrade step Clean up NuGet package references applied successfully
[17:02:45 INF] Initializing upgrade step Update TFM
[17:02:45 INF] Recommending executable TFM net6.0 because the project builds to a web app
[17:02:45 INF] TFM needs updated to net6.0

[17:02:45 INF] Applying upgrade step Update TFM
[17:02:45 INF] Recommending executable TFM net6.0 because the project builds to a web app
[17:02:58 INF] Updated TFM to net6.0
[17:02:58 INF] Upgrade step Update TFM applied successfully
[17:02:59 INF] Initializing upgrade step Update NuGet Packages
[17:02:59 INF] Initializing upgrade step Duplicate reference analyzer
[17:02:59 INF] No package updates needed
[17:02:59 INF] Initializing upgrade step Package map reference analyzer
[17:02:59 INF] Marking assembly reference System.Web for removal based on package mapping configuration ASP.NET
[17:02:59 INF] Adding framework reference Microsoft.AspNetCore.App based on package mapping configuration ASP.NET
[17:02:59 INF] Initializing upgrade step Remove reference 'System.Web'

[17:02:59 INF] Applying upgrade step Remove reference 'System.Web'
[17:02:59 INF] Removing outdated assembly reference: System.Web
[17:02:59 INF] Upgrade step Remove reference 'System.Web' applied successfully
[17:02:59 INF] Initializing upgrade step Add framework reference 'Microsoft.AspNetCore.App'

[17:02:59 INF] Applying upgrade step Add framework reference 'Microsoft.AspNetCore.App'
[17:02:59 INF] Adding framework reference: Microsoft.AspNetCore.App
[17:02:59 INF] Upgrade step Add framework reference 'Microsoft.AspNetCore.App' applied successfully
[17:02:59 INF] Applying upgrade step Package map reference analyzer
[17:03:06 INF] Upgrade step Package map reference analyzer applied successfully
[17:03:06 INF] Initializing upgrade step Target compatibility reference analyzer
[17:03:06 INF] No package updates needed
[17:03:06 INF] Initializing upgrade step Upgrade assistant reference analyzer
[17:03:06 INF] No package updates needed
[17:03:06 INF] Initializing upgrade step Windows Compatibility Pack Analyzer
[17:03:06 INF] No package updates needed
[17:03:06 INF] Initializing upgrade step MyDotAnalyzer reference analyzer
[17:03:06 INF] No package updates needed
[17:03:06 INF] Initializing upgrade step Newtonsoft.Json reference analyzer
[17:03:06 INF] No package updates needed
[17:03:06 INF] Initializing upgrade step Windows App SDK package analysis
[17:03:07 INF] No package updates needed
[17:03:07 INF] Initializing upgrade step Transitive reference analyzer
[17:03:07 INF] No package updates needed
[17:03:07 INF] Applying upgrade step Update NuGet Packages
[17:03:07 INF] Upgrade step Update NuGet Packages applied successfully
[17:03:07 INF] Initializing upgrade step Add template files
[17:03:07 INF] 0 expected template items needed
[17:03:07 INF] Initializing upgrade step Upgrade app config files
[17:03:07 INF] Found 0 app settings for upgrade:
[17:03:07 INF] Found 0 connection strings for upgrade:
[17:03:07 INF] 0 web page namespace imports need upgraded:
[17:03:07 INF] Initializing upgrade step Update source code
[17:03:07 INF] Running analyzers on ClassLibrary1
[17:03:10 INF] Identified 0 diagnostics in project ClassLibrary1
[17:03:11 INF] Initializing upgrade step Move to next project

[17:03:11 INF] Applying upgrade step Move to next project
[17:03:11 INF] Upgrade step Move to next project applied successfully
[17:03:11 INF] Recommending executable TFM net6.0 because the project builds to a web app
[17:03:11 INF] Recommending executable TFM net6.0 because the project builds to a web app
[17:03:11 INF] Recommending executable TFM net6.0 because the project builds to a web app
[17:03:11 INF] Initializing upgrade step Finalize upgrade

[17:03:11 INF] Applying upgrade step Finalize upgrade
[17:03:11 INF] Upgrade step Finalize upgrade applied successfully
[17:03:11 INF] Upgrade has completed. Please review any changes.
[17:03:11 INF] Deleting upgrade progress file at C:\s\scratch\ClassLibrary1\.upgrade-assistant

If anybody can provide a csproj/sln that reproduces this issue, that would be great! Closing for now.


Analysis of metric-based study regions

Task list. These may be several PRs (e.g., 1st, then 2nd-end)

[x] Create function that computes FDC-based metrics for flows from median and larger. Addressed in #28
[x] Create function for seasonal analysis of FDC-based metrics. Addressed in #30
[x] Create function for cluster analysis of resulting seasonal distributions. Addressed in #50
[x] Create function that visualizes resulting cluster regions. Addressed in #50
[ ] Create function that generates the union of selected regions and saves to shapefile. Likely will move to a new issue to explore options for combining point-based clusters into watershed-based regions

For seasons in which we have no events, do we want the duration of events above a % threshold for that season to be reported as 0 or as NA? The resulting seasonal average (computed across all years for a site) will be affected by 0s, but will not be affected by NAs (NAs are dropped). Treating as NA will provide a more accurate estimate of the average duration of events above the threshold in that season, so I'm leaning towards using NAs

Just realizing that the choice does not matter if we transform the raw seasonal durations into fractions of a year: (season duration)/(annual total duration)

I can see 2 approaches for computing the resulting seasonal metrics and I'm not sure which is best to use:

Period of record method:

Compute the seasonal durations for each year (4*n years values)
Average the seasonal values over all years (4 values)
Compute the fraction per season (4 values)

Annual timeseries method:

Compute the seasonal durations for each year (4*n years values)
Compute the fraction per season (4*n years values)
Average the fractions over all years (4 values)

Any suggestions? @FlowChar, what approach did you use for previous work with seasonal metrics?

Not sure I fully follow - what do you mean by "compute the fraction per season" (in both approach 1 and 2)?

For example, considering number of events:
fraction per season = events in season / total events for the year

I'm opting to close this. We are currently using separate regions for flows 50-70th percentile and flows 75th-95th percentile


USB tether support

I make heavy use of the USB network tethering feature of my Android phone. After connecting my phone via USB and enabling USB tethering on my phone, to connect to it under FreeBSD I have to run:
dhclient ue0
It would be nice if networkmgr could support auto-detection of and connection to USB ethernet connections.

I am looking forward to implementing that.

I have added support for multiple cards including ue0 in https://github.com/GhostBSD/networkmgr/commit/203f09a66c2e77f3b22d49b92efef5456e34cbec see https://ibb.co/iQ26cm wired @ is ue0.


gofmt -w and raw string support for go

Considering using this in a syntax highlighting library, so raw string support seemed like a good first addition. Is it still being maintained? If so, I'd like to contribute.

Yep, still being maintained. Will take a look soon, thanks!
Sent from my iPhone

On Apr 12, 2015, at 09:26, alaska<EMAIL_ADDRESS>wrote:
Considering using this in a syntax highlighting library, so raw string support seemed like a good first addition. Is it still being maintained? If so, I'd like to contribute.
You can view, comment on, or merge this pull request online at:
https://github.com/sourcegraph/lexer/pull/1
Commit Summary
gofmt -w
raw string support
File Changes
M common.go (66)
M helpers_test.go (12)
M languages.go (998)
M lexer.go (198)
M lexer_test.go (104)
Patch Links:
https://github.com/sourcegraph/lexer/pull/1.patch
https://github.com/sourcegraph/lexer/pull/1.diff
—
Reply to this email directly or view it on GitHub.


Update for pending fuel-asm refactor

This updates all crates for the fuel-asm refactor introduced here: FuelLabs/fuel-vm#283. You can learn more about the change at this PR. The aim is to propagate this last API-breaking update through fuels-rs and sway before beta-3.
The associated fuel-core PR can be found here: FuelLabs/fuel-core#973.
Once the refactor lands upstream and the [patch] table is removed in this PR, this unblocks the associated sway update PR here: FuelLabs/sway#4004.

OK, just updated this PR to use the newly published fuel-core 0.17 and fuel-vm 0.26 crates.
I've also included a commit to update the fuels-types Message type in order to account for the recent change to the Message type in fuel-core-client, introduced in https://github.com/FuelLabs/fuel-core/pull/971.


Add kwargs to route_ports_to_side

Fixes #3545
Summary by Sourcery
Add support for passing keyword arguments to the route_ports_to_side function. This allows users to pass additional parameters to the underlying routing functions.
Bug Fixes:

Fixes an issue where additional parameters could not be passed to the underlying routing functions.

Enhancements:

Improve the flexibility of the route_ports_to_side function.

I also opened a PR, in both cases we have typing issues :)


Where is the output of the "Run on Save" command displayed?

I would like to see the output of the command it executed on save, is that possible?

I was wondering that myself, too. I think I found it:
Output > Then on the Dropdown on the left, select Run on Save

Yes, this is available in the Output pane > Run on Save dropdown item


[20.09] Fixes for python3.pkgs.{jedi,python-language-server,engineio}

Motivation for this change
backport of #97209
ZHF: #97479
cc @NixOS/nixos-release-managers
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Could you include references to the commits on master that these are cherry-picks of in the commit messages? (As you get when using cherry-pick's -x flag)

Could you include references to the commits on master that these are cherry-picks of in the commit messages? (As you get when using cherry-pick's -x flag)

Sorry for forgetting the -x flag. Commits amended


Jacques/docs v1.0

Extensive update to the Opik documentation

@jverre the link in sdks/python to the contribution guide doesn't work for me (not sure if it's related to some breakage in markdown or to the github itself). Anyway, I'll probably work on the SDK contribution guide separately soon :)
Impressive work!


GUI Rewrite

Description
This PR rewrites the code menu and screen logic across the entire mod. Tidying up legacy code, breaking all of our texture atlases up into sprites and starting down the path of our GUI redesign (starting with the Alloy Smelter).
I am creating this draft PR so that I can keep my TODO list handy.

TODO

[ ] Finish splitting up the GUI widget assets
[x] Fix the IO overlay blocking tooltips - this will need to be a better overlay system in our base screen impls.
[ ] Re-add IO config button to all screens.
[ ] Tidy up the custom widgets across the machines module
[ ] Fully test all screens still work as expected.
[ ] Add hovered variant of the IO config button and lay groundwork for the hovered variant of the enum icons.

Breaking Changes
All menus and screens have been affected API wise, however no machine implementations have been changed, nor public APIs.

Checklist

[ ] My code follows the style guidelines of this project (.editorconfig, most IDEs will use this for you).
[ ] I have made corresponding changes to the documentation.
[ ] My changes are ready for review from a contributor.

In the interest of getting the project restructuring done - I am going to re-enable IO Config on all screens and then merge this in. All other outstanding work will be done afterwards :)


Praj+vinay/update chef server to 14.4.4

Update Infra Server from 14.1.0 to 14.4.4

We will want to make sure to call out the benefits of this in our release notes. Some, but not all of the changes can be found here: https://docs.chef.io/release_notes_server
Note: Most of these changes are omnibus only so don't impact Automate.


Add Plugin Images

In Showcase we have plugin Images. He’s a bit different from others, as it has/can insert images: https://www.screencast.com/t/wqU842Lhw
Approx. estimate time: 6-8h

Related issues:
#24 - Add Plugins (Simple)  - DONE
#25 - Add Plugin Event
#26 - Add Plugin Vitals - News
#75 - Add Plugin Drawings
#76 - Add Plugin Documents
#77 - Add Plugin Clinical Statements
#78 - Add Plugin Orders
#79 - Add Plugin Transfers of Care
#80 - Add Plugin Test Results


Add option to add custom language codes

Be able to add custom locales

Hi @cupcakearmy,
Does this option is working? how to use the custom locales?
Thanks,

The ticket is still open, which means it is not implemented yet.
I have not found time, I'll do it one day :)

Thank you @cupcakearmy , it will be very useful when it is implemented. looking forward to this advance feature.

And it should support variants as well such as pt-BR-PB.


CUDA 10 Support

Requesting CUDA 10 support and cuDNN 7.4.2 support.  The next release of Tensorflow will be CUDA 10 (the nightly is now).  The latest NVidia video drivers work best with CUDA 10.

We already support it.

If you are asking for a prebuild package with Cuba 10. It's another problem.


Video Conference Mute toolbar

Microsoft PowerToys version
0.70.1
Installation method
Microsoft Store
Running as admin
Yes
Area(s) with issue?
Video Conference Mute
Steps to reproduce
first of all thank you guys for these amazing tools,
in Video Conference Mute when i make the toolbar never hide and appear over all monitors, it's go hide if i make some window Fullscreen and it should be appear on top even if i open an app in Fullscreen mode. so please make it in the next update.
thanks in advance
✔ Expected Behavior
toolbar should be on top always even if i open anything in fullscreen
❌ Actual Behavior
if i open some apps or photo in fullscreen mode, the microphone toolbar will disappear.
Other Software
No response

VCM is in maintenance mode and we will only resolve a small amount of adjustments from the core team moving forward, please see #21473.  We will accept community contributions to resolve issues


Consider saving the .snakemake directory in the babel_outputs

Most of the information in this directory is unnecessary, but it might be useful to keep the logs around with the babel outputs, and since the entire directory is <2M anyway I don't think it makes sense to separate just the logs out. I think we can move this directory into babel_outputs/ by setting the --shadow-prefix command line argument.

I now include the Screenlogs for the Babel runs in babel_outputs, which are huge (that needs fixing!) but should include a bunch of information we might otherwise miss out on. I'm not sure that the Snakemake directory would add more to this. Closing.


[Headers -> content-type] The value of 'content-type' is being displayed as a Date type

can you share more information i.e. which url you used and the method used to run the application

Hey @muni106 I discovered the issue on: https://web-check.as93.net/results/https%3A%2F%2Ftime.com

I've tried to run "time.com" in different ways and it is as it should be (the image) even with your link, i think it could be a cache error or something similar.

That's weird... okay I think it could be a caching issue. Thanks!


Implement Smarter Peer Choices, Load Peers from Network

Please review #34 first. This pull request is built on top of it and is currently showing its changes too.
Refactor ArkNet classes to take more advantage of OOP, cut down on useless code
Dramatically cut down HttpUtils noise -> Rename to RequestManager
Begin transition to @dafty responses over model use.

@dafty I'll rebase this and fix conflicts tonight. I'll probably also try to add some naive peer rotation given a timeout on currently selected peer.

Additionally, I'll open a separate PR tonight finishing the v1 serialization of transactions (or at least a WIP) for the crypto v1. I feel it is important to finish this and start work on v2 ASAP.

V2 spec is not released yet, and will probably undergo at least a few weeks on devnet once released. In reality, we just need to add some new classes for the requests and responses. The underlying logic of v2 shouldn't change much, if at all, as far as we are concerned.

@dafty hey, sorry wasn't able to work on this one recently was busy. I should have time tonight to rebase and fix up these merge conflicts.

here i fixed the conflict, go ahead and review this one i'll open a separate pr later for the serialization. i should have time tonight

@dafty if this pr is alright can we merge it? i just finished the smart bridges for v1. i'll look at the AIP you sent me for v2.

@dafty Closing in favor of #36
please review this and merge as you can. let me know what you think next steps should be.


Error enabling the plugin

Hi,
When trying to add your plugin I got the following error:

Steps that I follow:

Download the addons.zip from the Github Release page (v 2.0.0)
Unzip the file inside the addons folder, so then the folder structure is the following:

/addons
    /GodotPlayGamesService

Hi @manuelarte thanks for using the plugin! I'm sorry you're having this issue. The error is very strange though, do the logs tell anything else about why the scripts are not compiling?
Also, can you try closing and reopening the project? I remember that sometimes the plugin can error on the first load, but then work fine.
I'm also assuming that you enabled the plugin, right? Please, let me know if any of these steps help you!

Hi lakobs, yes, I enabled the plugin and I also restarted the app, and still got the same error. I am new to GoDoT, so I am still figuring out things. I will come back with the output of the logs

Hi again @Iakobs . It seems now the autoload error dissaperared, and now I got:
Error loading configuration for Game Services! Error: 7

If I remember correctly that's a login error from Google. Try following the steps in the plugin docs here, or if that's already done, you can check this.
Google configuration of Game Services can be a real pain, I tried to simplify the plugin part as much as possible. Let me know how it goes!

De nada! Pues si la cuenta de Google está suspendida, es probable que sea ese el problema 😳 Espero que te dejen reactivarla fácilmente!

Hola @lakobs, ya me he recreado la cuenta, he añadido logros (achievements). Tambien he añadido my Game id en el dock Godot Play Game Services.
Tambien he puesto este codigo en el ready de mi scene principal:
func _ready() -> void:
	### Authenticate with Google Play Services ###
	if OS.has_feature("android"):
		SignInClient.user_authenticated.connect(func(is_authenticated: bool): # (1)
			if not is_authenticated:
				SignInClient.sign_in()
		)
	###
	...

He querido probar solo eso, pero cuando intento exportar el proyecto a android (crear el apk), me encuentro con esto:

(si desactivo el plugin si que puedo exportar)
Se me ha olvidado algo? Importante mencionar que no he creado/puesto nada relacionado con el fingerprint o keystore en el exportador de godot. (No se si me estoy explicando):