refactor: edit quantity borders

Is your feature request related to a problem? Please describe.

The quantity component has a different border than the text input
Describe the solution you'd like

We need to fix the borders to have the same design
Additional context

FIGMA

The quantity selection isn't yet developed. I think we can close this issue.


Revert "ci: fix release pipe"

Reverts qlik-oss/nebula-table-utils#56

:tada: This PR is included in version 2.2.0 :tada:
The release is available on:

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


Delete lightstep-incident-response plugin

Hi,
I worked on developing lightstep-incident-response-plugin. Now, we no longer need this lightstep-incident-response-plugin as Lightstep Incident Response application is shut down and would no longer continue to work.
Hence, its integration with Jenkins will have to be removed, requesting to please delete this repository as I don't have access to do the same. Thank you.

@timja can you archive the repository please? Let's rather not delete published plugins.

will archiving the repo, remove plugin documentation?

will archiving the repo, remove plugin documentation?

No, and I don't think that should be done. Archiving will set a clear sign that the project reached its end of life.
You can also add the deprecated topic to the repository.

okay, do we need to update our plugin doc https://plugins.jenkins.io/lightstep-incident-response/ ?

The plugin has been suspended from the update center.


Additional authentication is required

Hello! I've installed poetry and attempted to run the auto transfer, but I get the following output error
 ./venmo_auto_transfer.bash
venmo_auto_transfer: attempting to login to Venmo as [USER] with password and bank account number
venmo_auto_transfer: {"issue":"Additional authentication is required","code":81109,"title":"Error","secret":"[SECRET]"}
venmo_auto_transfer: got unexpected status code 400 on /login POST

If I try with option -v I get an OAuth2 error
./venmo_auto_transfer.bash -v
venmo_auto_transfer: attempting to login to Venmo as [USER] with password and bank account number
venmo_auto_transfer: {"issue":"OAuth2 Exception: Unauthorized action..","code":240,"title":"Error"}
venmo_auto_transfer: got unexpected status code 400 on /login POST

Any ideas what might be going wrong here?

Venmo has decided to block your account. They did that to me too, as well as thousands of other users. So far, Venmo has refused to elaborate on the reason they have decided to lock users out of their funds, and customer support agents refuse to provide any assistance.

@raxod502 oddly enough without changing anything at all on my end, the problem seems to have fixed itself as of today and I was able to transfer my balance with the script. Hopefully this means Venmo is aware/fixing the problem for others as well?
Though notably, I didn't have any issues with signing in on mobile app or browser like some of the commenters did
In any case, closing this issue because it sounds like the issue is with venmo exclusively and not this tool. Thank you!

I've been in communication with Venmo about this issue for some time. So far, 55 emails have been exchanged with several dozen support agents over 8 weeks, and the case is still ongoing. At this point, I feel quite confident that Venmo as a company has no interest in providing any assistance or resolution to their users. Sounds like you may have gotten lucky though and the automated systems decided to unflag your account. That happened to me from time to time as well.


Does not seem to work with ios mobile safari or android mobile chrome

Please provide us with the following information:

This issue is for a: (mark with an x)
- [ ] bug report -> please search issues before submitting
- [ ] feature request
- [ ] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Minimal steps to reproduce

Any log messages given by the failure

Expected/desired behavior

OS and Version?

Windows 7, 8 or 10. Linux (which distribution). macOS (Yosemite? El Capitan? Sierra?)

Versions

Mention any other details that might be useful

Thanks! We'll be in touch soon.

Looking into this now

Looking into this now


Test using default session trim with a threshold of 1 day

Closing as I want to restart from a different approach, and closing is a quick easy way to remove the testable and revert the job change


Add rateLimit event

Allow monitoring of your app's ratelimits in your logs whenever it hits one.

The log level wouldn't be wtf, because the dev hasn't done anything wrong. Should be debug

Thank you for the heads-up! I've pushed a change regarding this. 😄


2017/2018 rookie team year dropdown starts by showing 2016/2017

http://theorangealliance.org/teams/13284
This team is a rookie for the 2017/2018 season. When you first open the page, the year dropdown says 2016/2017, but when you click on it the only item in the list is 2017/2018.

Switched to the 2017/2018 Season


Need information on installing check_pm2

The Nagios log server is setup on a centOS machine (say machine A) and Nagios XI is setup on centOS machine B. The npm pm2 is setup on an ubuntu machine C. All these three machines reside on same intranet.
From what I see, this plugin does the process monitoring from Nagios (Nagios XI). Is the assumption correct? If yes, does the check_pm2 installation need to happen on machine C where pm2 is run so that the process update is sent to machine B where Nagios XI is run?
Now my expectation is to have the pm2 logs sent to Nagios dashboard (the log server). Is there a way that can be achieved?

You would have to install check_pm2 on machine C. Also important is that check_pm2 has to be run with the same user that runs the pm2 god process. To query the status from I would suggest to install nrpeon machine C. A check via ssh would be a possible alternative to nrpe.
check_pm2 does not handle pm2 logs. It just looks if all processes are running and can check if the restart counter exceeds a configurable threshold.

Hello Hobbyquaker ,
I used the script check_pm2.py . Gave 777 permission present in /tmp folder on the same machine  on which pm2 daemon is there . I am also running with same user .
.The application is running on 30560 port  . And i run this way .But receiving error --
./check_pm2.py -H localhost -p 30560 -w 2 -c 5
error:could not collect metrics via <IP_ADDRESS>:9615
How to resolve this please assist this . Even the ports are also opened .
Please find screnshot for your reference . I did for other


Update circe-literal, circe-parser to 0.14.6

About this PR
📦 Updates

io.circe:circe-literal
io.circe:circe-parser

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

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "io.circe" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "io.circe" }
}]

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

Superseded by #321.

Superseded by #326.


conflict with sinon-chai

Previous chai plugin sinon-chai https://www.chaijs.com/plugins/sinon-chai/ also defines spy.should.have.been.called
When testing my sinon spy, I get the error: AssertionError: Cannot check if a route has been called without route() in the assertion.
const spy = sinon.spy()

expect(spy).to.not.have.been.called

I reworked the plugin so that its own methods only kick in if you call route() first; otherwise, another plugin's methods will run instead.
I used the below script to test it. Note that you have to apply chai-fetch-mock after sinon-chai.
Can you install this and let me know if it solves your problem? If so, I can publish a new version of the library.
npm install gakimball/chai-fetch-mock#ab941b81b7eb215f15cb630114e74822380884b6 --save-dev

const chai = require('chai');
const sinon = require('sinon');
const sinonChai = require('sinon-chai');
const fetchMock = require('fetch-mock');
const chaiFetchMock = require('.');

chai.use(sinonChai);
chai.use(chaiFetchMock);

fetchMock.get('/test', {test: true});

const spy = sinon.spy();

spy();

fetch('/test').then(() => {
  // `called` uses chai-fetch-mock here
  chai.expect(fetchMock).route('/test').called;

  // `called` uses sinon-chai here
  chai.expect(spy).called;
})

Did a quick test, seems to work 👍

Great, thank you! I've published v3.0.0 with the fix.

Thanks @gakimball , you're amazing!


Browser support information is missing

There doesn't seem to be any information listed on supported browsers. Is there any information available and if there is, is this something that could be added to the README?
Thanks!

+1, I'd love to know what browsers this project supports.

FWIW, official examples work in IE9

@eugene1g :open_mouth:
We should definitely add this to the main readme but at this point the browser support looks like this:

Chrome
Firefox (will be faster/better supported in the coming release)
IE9+

IE11 - On Windows 8 touchpad two finger scrolling doesn't work.
IE9 - Support is likely to be deprecated for this browser very soon.

@pieterv Thank you for showing the roadmap but can you give more details about browsers versions ? I'm using an old embedded firefox in a project where I can't update it so easily. Thanks again.

Thank you for reporting this issue and appreciate your patience. We've  notified the core team for an update on this issue. We're looking for a response within the next 30 days or the issue may be closed.

Accept  issue

Is there is support for safari?


ziti-tunnel tproxy: intercept locally generated packets without using local routes

ziti-tunnel currently sets up a local route for the IP address of each intercepted service. The local route is being used to cause locally generated packets to traverse the PREROUTING iptables chain (where TPROXY can be applied), but there's another way to push local packets through PREROUTING:

create a custom routing table
add a default route to the custom table, sending all traffic to dev lo
add an ip rule that sends all packets marked "nf-intercept" to the custom routing table.
for each intercepted service, create an iptables rule on the OUTPUT chain marks any packets destined for the intercept ip:port:proto with the "nf-intercept" mark

Am I mistaken? I'm under the impression that ziti router's tunnel mode tproxy does use iptables tproxy marks, not IP routes. If that's correct, then it's one of the distinguishing differences between ziti-edge-tunnel's IP route approach, which requires elevated privs at the host level, and ziti router (and ziti tunnel) namespace'd approach with TPROXY, which happens to work in containers, and is therefore the only existing solution for pod-level transparent interception in Kubernetes.
For reference, I'm maintaining a comparison of the capabilities of both in this doc issue: https://github.com/openziti/ziti-doc/issues/383

Yes, local routes are necessary if locally generated packets need to be intercepted. The routes are not needed if the tunneler only intercepts packets that are received from other hosts (i.e. the tunneler is acting as a gateway).
The routes are needed because locally generated packets would otherwise not traverse the mangle table or the PREROUTING chain, which is the only place where the TPROXY iptables target is valid.

That makes sense and thank you for explaining it!

Closing per @scareything comment


add getTable to dagEdge Model

If dag table is created with different name from config, dagEdge model will try to get records by className (dag_edges).
We can add getTable to fix this bug, as it is described in [ Laravel API].(https://laravel.com/api/9.x/Illuminate/Database/Eloquent/Model.html#method_getTable)

If dag table is created with different name from config, dagEdge model will try to get records by className (dag_edges). We can add getTable to fix this bug, as it is described in [ Laravel API].(https://laravel.com/api/9.x/Illuminate/Database/Eloquent/Model.html#method_getTable)

Hello and thanks for your PR submission.  I'm not sure why, but I did not see any notification for this.  Probably missed it.  😅
Anyway, I will take a closer look and try to get back to you soon. 🤓


[✨] Towards atomic CSS in Qwik

Is your feature request related to a problem?
Tailwind and style9 are proving that there's something to atomic-ish CSS and CSS-in-JS.
Atomic CSS means (IMHO) that the CSS is broken down into individual rules. To do this, it's easier if you have a ton of mechanically prepared rules.
This means that there will be a lot of rules you don't use, and that it's easy to misspell a classname unless you're helped with types.
Describe the solution you'd like
We want the following properties:

define rules in libraries as well as in-file next to components
definitions compile to static classnames+css at build time
Qwik handles the css injection, whether in one large file or component-by-component
when a classname is not used, its css is not included

To achieve this, we need:

For (1):

build-time conversion, either via

custom plugin that converts at build time

style9 does this but fails combined with Qwik
vanilla-extract does this but for separate files only

a way generic to mark a piece of code as build-time

e.g. const foo = eval$("SDFSD".toLowercase()) becomes const foo = "sdfsd"

we end up with "classNames", which are imported and used as-is in class attributes

For (2): processing code, to be copied from style9 and/or vanilla-extract etc
For (3) + (4): ???

perhaps each classname should be a special type of QRL, which includes the CSS
when you use a classname in a component, it automatically adds the CSS to the component
Qwik can then inject useStyle$([...allTheQrlCss]) or put everything in a single CSS file, depending on settings

Describe alternatives you've considered
vanilla-extract goes a long way but isn't optimized for atomic css and doesn't tree shake the css
Additional context
It may seem suspect that a special QRL type and special CSS handling is needed, but CSS is an integral part of the browser platform, so IMHO it's warranted to give it special treatment in a framework meant for the browser platform.

Let’s close this, as PandaCSS fullfills of this checks!


very minor typo in MIGRATION-V4.md

very minor typo

Checklist

[ ] npm test passes (tip: npm run lint-fix can correct most style issues)
[ ] tests are included
[ ] documentation is changed or added

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Replaced by #235


[Android] Build fails with compileSdkVersion 34

Hey all, recently bumped our compileSdkVersion up to 34 to support the latest version of intercom-react-native and now my builds are failing with the following errors
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:mergeExtDexDebug'.
> Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
   > Failed to transform accompanist-themeadapter-material-0.32.0.aar (com.google.accompanist:accompanist-themeadapter-material:0.32.0) to match attributes {artifactType=android-dex, asm-transformed-variant=debug, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=21, org.gradle.category=library, org.gradle.dependency.bundling=external, org.gradle.libraryelements=aar, org.gradle.status=release, org.gradle.usage=java-runtime}.
      > Execution failed for DexingWithClasspathTransform: /home/expo/.gradle/caches/transforms-3/2f8a3d0aee53c2f966489a67355c46d9/transformed/jetified-accompanist-themeadapter-material-0.32.0-runtime.jar.
         > Error while dexing.
   > Failed to transform accompanist-themeadapter-core-0.32.0.aar (com.google.accompanist:accompanist-themeadapter-core:0.32.0) to match attributes {artifactType=android-dex, asm-transformed-variant=debug, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=21, org.gradle.category=library, org.gradle.dependency.bundling=external, org.gradle.libraryelements=aar, org.gradle.status=release, org.gradle.usage=java-runtime}.
      > Execution failed for DexingWithClasspathTransform: /home/expo/.gradle/caches/transforms-3/f895d8b2240e63eb2c699249188896bf/transformed/jetified-accompanist-themeadapter-core-0.32.0-runtime.jar.
         > Error while dexing.
   > Failed to transform kotlin-stdlib-1.9.0.jar (org.jetbrains.kotlin:kotlin-stdlib:1.9.0) to match attributes {artifactType=android-dex, asm-transformed-variant=debug, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=21, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}.
      > Execution failed for DexingWithClasspathTransform: /home/expo/.gradle/caches/transforms-3/d00b0b172976cc1271cabf265090c43d/transformed/jetified-kotlin-stdlib-1.9.0.jar.
         > Error while dexing.

I ran ./gradlew app:dependencies and traced that accompanist-themeadapter library back to com.stripe.identity (it seems like this library may be deprecated)
Anybody else experiencing this and/or know a workaround. Thanks!

Hey @ccen-stripe just bumping this here. Any ideas?

hi @giaset update: https://github.com/stripe/stripe-android/pull/7603 is being merged to upgrade the version to 34, will let you know once it's available in react native SDK

Thanks for the quick turnaround @ccen-stripe!

Hi @giaset we just tried to reproduce your issue with current release and thought this is not a compileSDK version issue from the native Android SDK, we were able to build with existing versions on an app with compileSDK 34.
The compile issues from your app seems happening on a certain combination of RN, android gradle plugin(AGP), gradle and kotlin verions. From your log, it seems you are using kotlin 1.9.0, we tried to reproduce the issue in different settings but the app was built properly, here is what we tried:

react-native:0.73.2, with default AGP version 8.1.x,  kotlinVersion:1.8.0 or kotlinVersion:1.9.0 (link)
react-native:0.70.6, with AGP version 7.2.2, kotlinVersion:1.8.0 or kotlinVersion:1.9.0 (link)
react-native:0.69.1, with AGP version 7.2.2,kotlinVersion:1.8.0 or kotlinVersion:1.9.0 (link)

Please share with your app's android settings for us to poinpoint the issue, specifically -package.json, android/gradle/wrapper/gradle-wrapper.properties, android/build.gradle and android/app/build.gradle so we could reproduce your dev env.

Also tried with the latest 4 release (6.1.0 to 6.4.0) with intercom but can't reproduce the issue, FYI here is the android with identity and intercom, on an app at compileSdkVersion 34, kotlinVersion 1.9:

Update: upgrading to Expo 50 and bump compile SDK version to 34 fixed this issue


refactor: link configuration file options to GitHub

What's Changed in this PR
close #1043
let the configuration document as an overview about how to setup configuration:

Moved the command line options to the command line documentation
Linked the configuration file options to Github
Also fixed the wrong description about environment variable

Checklist

[ ] Please confirm that all corresponding versions of the documents have been revised.
[ ] Please ensure that the content in summary.yml matches the current document structure when you changed the document structure.
[ ] This change requires follow-up update in localized docs.

Summary by CodeRabbit

Documentation

Enhanced Greptime CLI reference documentation with detailed options and examples.
Refined GreptimeDB configuration guide for better clarity and order of precedence.
Updated configuration examples across multiple versions to illustrate the use of environment variables for setting data_home instead of max_inflight_tasks.

@killme2008 The options has been put back into the document, PTAL


The Rounded icon for Nougat doesn't work

It should fill up the circle

https://developer.android.com/guide/practices/ui_guidelines/icon_design_adaptive.html

@teolemon Is this still the case?  In my nougat the icon fills the circle.

fixed, closing, thanks @sachincool


Fix capacity update command when the capacity in Paused state

Description

This checklist is used to make sure that common guidelines for a pull request are followed.

[X] Please add REST spec PR link to the SDK PR
[X] I have read the contribution guidelines.
[X] The pull request does not introduce breaking changes.

General Guidelines

[X] Title of the pull request is clear and informative.
[X] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[X] Pull request includes test coverage for the included changes.

SDK Generation Guidelines

[X] If an SDK is being regenerated based on a new swagger spec, a link to the pull request containing these swagger spec changes has been included above.
[X] The generate.cmd file for the SDK has been updated with the version of AutoRest, as well as the commitid of your swagger spec or link to the swagger spec, used to generate the code.
[ X] The *.csproj and AssemblyInfo.cs files have been updated with the new version of the SDK.

Replace the PR with new one to make it cleaner

Please review

@selasagi please reference the REST spec PR

Spec PR - https://github.com/Azure/azure-rest-api-specs/pull/1905

@selasagi  Please contact the PS team for their release schedule

To publish I need first that my code will be merged. When you expect this merge?

@selasagi Please find instructions to publish here


⚠ Bofrost.es has degraded performance

In c6f696e, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1516 ms

Resolved: Bofrost.es performance has improved in db2de39 after 13 minutes.


[Feature Request] Add initial pages to some algorithms

I would like to add category.json files with appropriate information so that the users can access the pages with ease.

Kindly assign me this issue with gssoc-ext with appropriate level and hacktoberfest-accepted label.

Arranging the content in appropriate manner.


Multiple conditional format comparison

I don't see an example that would allow me to:
$Files = Import-Csv -Path $csv | Export-Excel $xls -AutoSize -show -ConditionalText $(
New-ConditionalText -Range "C:C" -ConditionalType NotEqual 'PROFILE ONLY'
New-ConditionalText -Range "B:B" -ConditionalType BeginsWith '0' black cyan
Look at column C and if it did not contain PROFILE ONLY highlight column B if it  begins with 0 only then highlight it in cyan, if it is not true do nothing.  Not sure how to do IF/And elseif statement with the conditional text with export excel

Interesting. Investigate if you can do it with the Excel directly, then we can see if it can be surfaced via PowerShell


code: updated job error handling

Cherry-picked 019238951a7de7b12e895d8c105784042303b37f.

@ivansenic this does not fix the error message at all... 🤣 and the latest executables from the upstream repo are not working...


Changes to CustomVisuals not getting rebuilt on watch

The /src/Clients/PowerBIVisualsPlayground/obj/CustomVisuals.js file doesn't seem to get recompiled after a watch trigger:
Running gulp watch:
[16:16:16]   Waiting for changes...
[16:19:22] Starting 'tslint:customVisuals-on-watch'...
[16:19:22] Starting 'build:customVisuals-ts'...
[16:19:22] Starting 'tslint:customVisuals-on-watch'...
[16:19:37] Finished 'tslint:customVisuals-on-watch' after 15 s
[16:19:37] Finished 'tslint:customVisuals-on-watch' after 15 s
[16:19:50] Finished 'build:customVisuals-ts' after 28 s

I have to run gulp build for changes to get picked up.
Running Node 4.2 on OS X 10.10.

@jdrake Thanks, we added this issue to backlog.

@jdrake This problem is fixed in PR #441.


copyRealFile fake_file_path defaults to real_file_path

Changed TestCase.copyRealFile to default the value of fake_file_path to the same value as real_file_path, when fake_file_path is not provided/None.

Well done.  Thank you and welcome to the community of pyfakefs contributors!

Thanks, love the library, happy to contribute.
On Wed, Apr 5, 2017 at 1:22 PM, John McGehee<EMAIL_ADDRESS>wrote:

Well done. Thank you and welcome to the community of pyfakefs contributors!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jmcgeheeiv/pyfakefs/pull/176#issuecomment-291933885,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEXz6HHw2yNxm-BkOU9n9wc2JpvuPWgEks5rs83OgaJpZM4M0a8l
.


Images on gh-pages are not working

The examples from http://ashleydw.github.io/lightbox/ are not working because the direct links to instagram are returning "permission denied":
<?xml version="1.0" encoding="UTF-8"?>
<Error>
    AccessDenied
    <Message>Access Denied</Message>
    <RequestId>9D5A8154514AC518</RequestId>
    <HostId>
         WfQYscDaoqrrsPwg44EZ8rNssvobxMiNyx/Ni2lD8X6jfbFYeJBAmqxvLguOIjxvlhmw9qfSUow=
    </HostId>
</Error>

thanks for the heads up!

Thanks for solving
The first image in 10 and 15 is still not working:
https://github.com/ashleydw/lightbox/blob/gh-pages/index.html#L351-L358
and
https://github.com/ashleydw/lightbox/blob/gh-pages/index.html#L383-L391

In addition I just noticed that the images on the theme-pages are also not working:
http://ashleydw.github.io/lightbox/dark.html
http://ashleydw.github.io/lightbox/nyan.html


Please make a new NuGet release

Hi! Is there any chance a new NuGet package could be published with the recent pull request fixes?
Thanks so much!

I just uploaded SwipeCardView 2.2.0
Thanks for the contribution, I really appreciate it!


Yeah. The way they've acted and treated a server with 36,000 people is fucked.
An April fools joke is meant to be funny.
Disappointing behaviour

i was genuinely waiting an update from you for vendetta

you don't know how to read lil bro

It was made pretty clear Vendetta was EOL'd.

Yes they made the eol message clear; however with the constant possibility of projects being resurrected, getting up to 36,000 peoples hopes up (that don't realise it's April 1st), and then letting them down is pathetic.
I hope they grow up.

womp womp

pluh

Womp womp

Yes they made the eol message clear; however with the constant possibility of projects being resurrected, getting up to 36,000 peoples hopes up (that don't realise it's April 1st), and then letting them down is pathetic. I hope they grow up.

well these 36000 people who are apparently hoping for a resurrection can learn to read then

This was the most obvious april fools joke someone could make, the name even clearly referencing a different client mod that many vendetta users know about

paypal maisy £36000 for insta vendetta resurrection

Don't forget: Vendetta will return on 2 April

skull issue

Yeah. The way they've acted and treated a server with 36,000 people is fucked. An April fools joke is meant to be funny.


Swap memory not working

I'm trying to load a 70B 4-bit quantized model on a 32 GB jetson kit. However my process gets killed even when i have a lot of swap. Does MLC support swap out of the box? Any advice is highly appreciated

root@tegra-ubuntu:/# python3 /opt/mlc-llm/benchmark.py --model /data/models/mlc/dist/models/q4f16_ft/params/ --prompt /data/prompts/completion_16.json --max-new-tokens 128
Namespace(model='/data/models/mlc/dist/models/q4f16_ft/params/', prompt=['/data/prompts/completion_16.json'], chat=False, streaming=False, max_new_tokens=128, max_num_prompts=None, save='')
-- loading /data/models/mlc/dist/models/q4f16_ft/params/
Killed
root@tegra-ubuntu:/#

@raj-khare yes it does, but GPU/CUDA memory can't be swapped, and a 4-bit 70B model takes up ~35GB GPU memory just for the weights.  It might work in 32GB memory if you use llama.cpp and don't offload all the layers to the GPU, but for 70B models I would really recommend using Jetson AGX Orin 64GB.

got it


Misc. improvements, GUI speed-ups, and new options

Main features and changes:

Increment to CIAtah version to 4.2.0.
GUI improvements to ciapkg.motion_correction.computeManualMotionCorrection that significantly speed up GUI responsiveness, e.g. when doing hundreds of sessions.
computeMatchObjBtwnTrials now supports manual alignment of sessions before automated alignment and matching of cells across sessions.
Replace calls to suptitle with ciapkg.overloaded.suptitle due to function being dropped from newer Matlab releases.
Misc fixes for edge cases and other improvements.

New functions

ciapkg.api.getMovieFileType - API access for getMovieFileType.
ciapkg.api.getMovieInfo - API access for getMovieInfo.
ciapkg.api.readFrame - API access for readFrame.

Updated @ciatah

ciatah - Misc code fixes to conform to better Matlab language standards.
ciatahMainGui - Additional check only for movie previews of supported movie files. "Folder files" list selection additional regexp support. Changed so that 'Start selected method' button selects the correct folders like occurs when pressing enter. The folder list will no longer reset when selecting certain GUI elements that should not impact folder list.
computeMatchObjBtwnTrials - Added manual alignment option before automated for cases in which there are large shifts or rotations along with changes in bulk cells identified that might be hard for automated to align.
modelDownsampleRawMovies - Change TIF finding to split apart the information file before using for regular expression.
modelModifyRegionAnalysis - Fix modelVarsFromFilesCheck and modelVarsFromFiles recursion edge case.
modelPreprocessMovieFunction - Updated suptitle to ciapkg.overloaded.suptitle. Fix "No movies" dialog box displaying when movies successfully run. Add modelPreprocessMovieFunction settings saved in CIAtah class to saved output file for later retrieval. For selecting turboreg crop coordinates, switched to ciapkg.io.readFrame when single frame is requested as this is faster and avoids long read times of all frame information as occurs in certain types of TIFF files or hard drives. Misc code fixes to conform to better Matlab language standards.
modelVerifyDataIntegrity - Updated suptitle to ciapkg.overloaded.suptitle.
runPipeline - Eliminate the close all figure when initializing the main GUI. Unexpected for some users and undesirable in certain cases. Instead close all figures if a method is selected, this avoids user not getting feedback if figures are re-used and focus is not shifted.
viewMovie - Updated suptitle to ciapkg.overloaded.suptitle.

Updated +ciapkg

signalSorter - Updated suptitle to ciapkg.overloaded.suptitle. Also limit number of GUI re-runs to prevent infinite looping. Fixed issue with gca.XRuler.Axle.LineStyle being an empty object when axes created, leading to failure to assign and error loops. Make all openFigure to ciapkg.api.openFigure.
downloadGithubRepositories - Update _external_programs to call ciapkg.getDirExternalPrograms() to standardize call across all functions. If multiple repos requested but one already downloaded, previously exited before downloading the other repos.
readHDF5Subset - Fix display of information on error.
createPeakTriggeredImages - Ensure only unique signal peaks used.
fftImage - Misc code fixes to conform to better Matlab language standards.
getMovieFileType - Update all strcmp to endsWith to ensure finding file extension as there are cases where software will export metadata into files with naming schema like NAME.tif.xml for NAME.tif and this can cause issues when using strcmp without endsWith-like checks. Update docs. Added varargin support.
getMovieInfo - Directly call loadMovieList and bypass ciapkg.api.
loadMovieList - AVI now read(...,'native') is faster.
jsonRead - Fix edge case where the end of the imported string is a space, causing jsondecode to fail.
loadMovieList - AVI now read(...,'native') is faster.
manageMiji - Added forceLoad option.
manageParallelWorkers - Added nCoresFree option for users to set the number of cores to remain free. Added ability to input just the number of workers to open as 1st single input argument that aliases for the "setNumCores" Name-Value input, still support other input arguments as well.
modelAddOutsideDependencies - No longer use Fiji-based Miji.
readFrame - AVI now read(...,'native') is faster.
resetMiji - Update to use manageMiji to setup Miji, avoid certain issues. Also search for imagej instead of Fiji path.
computeManualMotionCorrection - Change number of pixels to translate per click and UI improvements. Improved pre-allocation, minimize GUI slowdown for large inputs over time. Improve speed of GUI and responsiveness. Force altInputImages to initialize as input class type to avoid automatic conversion to double (save space/ram). Significant speed improvements by removing certain calls to figure, axis, imagesc, etc. that slow down UI over time when many sessions aligned.
downsampleMovie - Update for Matlab standards.
viewAddTextToMovie - Added varargin for future additions.
changeFont - Updated so doesn't change Axes backgroundcolor when changing font color, only Axes text.
displayMatchingObjs - Updated suptitle to ciapkg.overloaded.suptitle
openFigure - Option to add a title to the figure, e.g. "Figure 1" becomes "Fig. 1 - Lorem ipsum". Also make user accessible change figure background color.
playMovie - AVI now read(...,'native') is faster. Also add primaryTrackingPointNback option to allow a trailing number of points from prior frames to appear.
exampleFxn - updated for better help.
getMovieFileType - Added support for checking if a cell was accidentally input instead of a string path along with verifying that input was a string. Added support for oir and czi/lsm Olympus and Zeiss file formats that already was in loadMovieList.

Updated +ciapkg.api

convertInscopixIsxdToHdf5 -  Update +image package to +inscopix.

Tested on MATLAB 2021b on Windows 10. Merging.


[language][prover] updated more vector test

added more tests for vector
there are two issues (TODOs) with test_get2() and test_borrow2()

Motivation
To test vector support of Move Prover
Have you read the Contributing Guidelines on pull requests?
Yes
Test Plan
cargo test
Related PRs

@bors-libra r=DavidLDill

:pushpin: Commit ade9117 has been approved by DavidLDill

:hourglass: Testing commit ade9117f06d0a863d8e06ab1c115f991b412ef67 with merge 2366f73e09bf92789de3e06193ca6d7732c43b53...

:sunny: Test successful - checks-circle_commit_workflow
Approved by: DavidLDill
Pushing 2366f73e09bf92789de3e06193ca6d7732c43b53 to master...


⚠ Samsung has degraded performance

In 60ea6c3, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2030 ms

Resolved: Samsung performance has improved in 1219cb8.


Fixed typos in currently modified files

Codecov Report

Merging #5419 into master will not change coverage.
The diff coverage is 0%.

@@          Coverage Diff           @@
##           master   #5419   +/-   ##
======================================
  Coverage    59.1%   59.1%
======================================
  Files         372     372
  Lines       23747   23747
  Branches     2758    2758
======================================
  Hits        14036   14036
  Misses       9696    9696
  Partials       15      15

Impacted Files
Coverage Δ

superset/cli.py
44.69% <ø> (ø)
:arrow_up:

superset/assets/src/explore/controls.jsx
46.96% <ø> (ø)
:arrow_up:

...src/components/FilterableTable/FilterableTable.jsx
91.95% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Uncaught ReferenceError: tinyMCE is not defined

When activating COMPRESSOR, I get tinyMCE is not defined. if I try tinyMCE_GZ.init I get tinymce is not defined.

Duplicate of #59


feat: register moodle as lti platform (test)

Already in effect in 'development' environment, just to make it transparent.

I decided to remove the LTI platform infos. While they are nicely documented there, they suggest that you can hook up a local LTI tool to a edu-sharing instance. Sadly, this does not work because you need direct server to server communication which is not possible if the LTI tool is running locally.
@hugotiburtino Hope that is fine with you? Let me know if you prefer something different. :slightly_smiling_face:


Use assert.strictEqual in tests

Tests are supposed to be strict. assert.strictEqual > assert.equal
This does, however, break several tests. I have disabled these tests temporarily and I have made a todo for myself to fix them in later PRs.
@dmitrig01 @chanian

:+1:

:+1:


Publish Recorder Command Type Object

Codecov Report
Attention: 132 lines in your changes are missing coverage. Please review.

Comparison is base (7b678b9) 21.03% compared to head (3ce7df7) 19.60%.

Files
Patch %
Lines

...dsRecorderCommand/DdsRecorderCommandTypeObject.cxx
0.00%
130 Missing :warning:

...order/src/cpp/command_receiver/CommandReceiver.cpp
0.00%
2 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #94      +/-   ##
==========================================
- Coverage   21.03%   19.60%   -1.43%
==========================================
  Files          28       29       +1
  Lines        2563     2693     +130
  Branches     1304     1409     +105
==========================================
- Hits          539      528      -11
- Misses       1572     1721     +149
+ Partials      452      444       -8

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


Refactor isdigit implementation to improve readability

Summary or solution description
Refactored isdigit built-in method.
Part of an overall refactoring to unify code generator logic and built-in methods generation.
Platform:

OS: Windows 10 x64
Python version: Python 3.7

Task linked: CU-864eq2u7w Refactor isdigit implementation to improve readability


Add option to base Sticky Scroll on indent, not Document Symbols

Testing #156175
Basing Sticky Scroll on class/function/namespace etc. makes a lot of sense, but only as long as there is an active language server or language extension that provides good Document Symbols (Outline). For all languages that either have no LSP (so, so many), whose LSP provides no Outline, whose LSP provide invalid Outline or which simply have no concept of functions/classes etc., Sticky Scroll can not be leveraged :-(
I'd argue that in many cases the respective context could be inferred from the indentation instead. I realize this may not be desirable by default, so perhaps it should be either hidden behind a flag or configurable per language. For example, in a large JSON file, you might then get this context:
1  {
51     "a": {
52         "b": [
-----------------------------------------------
74             "current_line",
75             "..."

this is IMO immensely useful, especially for dealing with messy codebases.
Personally, I'd like to have SS in CoffeeScript, Crystal, AutoHotkey, Markdown, JSON, and pretty much everywhere else except maybe plain text files. I think it also helps a lot outside the currently selected document symbols: Why not add SS for if/else blocks, for example? Worst case scenario, it occupies one single extra line; best case scenario, it helps you navigate nicely in multi-page if-else constructs.
There is one very ugly workaround that comes to my mind: Add a generic, language-independent extension which provides indentation based document symbols, by simply marking every line as a function definition. But I hope that won't be necessary. Also not sure if that would even work, because which doc symbols does SS use when there's multiple providers?
That said, thank you so much for adding this feature, I'm so happy it's finally here ❤

I think the automatic issue assigning failed (?) Not sure what I did wrong, but just in case here's a ping @aiday-mar

I would also love to see this in AutoHotkey!

So since this got put on the backlog, it won't happen anytime soon, I guess...? Could you give me a quick estimation on this? Because if it's still a long way, then I'll actually go ahead and create an extension with the questionable workaround mentioned above.

Hi phil294 thank you for your contribution. I intent to investigate the issue in the coming days by seeing how we can use the folding ranges model to obtain a custom outline model. Not sure yet how long this will take to implement.

Is there an option now to always use the folding model for sticky scroll?

@gulshan it only seems to be working as a fallback mechanism, nothing configurable though.
It's not yet part of the insiders build apparently, at least it did not work there for me so far.

To verify, open a file for which you do not have an extension containing a language server installed.
Verify that there is no outline in the explorer view
Verify that when you scroll the sticky lines are pinned at the same positions as the default start lines of the folding ranges


Add more crypto interfaces

This is the first PR for enabling more crypto interfaces.
Next steps are to enable aes256 and write implementation for decrypting for xchacha and aes (for pfsoc crypto only)

@kjyrinki-unikie This now implements fully the aes-gcm, please have a look if you can use these interfaces ?

Fixed alignment issues w. MAC, removed min_blocksize of 16 bytes requirement


Packaged WinUI 3 app can only p/invoke local DLLs on ARM when run as Admin

Describe the bug
We have issues with our packaged x64 WinUI3 app when running on ARM64. This app runs without any issues on x64.
P/Invoke to DLLs in the application folder does not work, unless the app is started as Administrator.
The app runs with full trust (as it is a WinUI 3 packaged app).
I tried to target as arm64 as well, but this gave me even more issues. Running as administrator did not help solve the issue in this case.
Steps to reproduce the bug

Install Xelion on an ARM device from this installer: https://appinstaller.xelion.com/winapp/v8n/Xelion-Package.appinstaller
Run Xelion
Enter credentials (if Microsoft reaches out, I can supply test credentials)
The app crashes on trying to p/invoke into the local dlls (sipdll.dll)

To successfully run the app, run Xelion as Administrator.
Expected behavior
The app should be able to p/invoke DLLs from the installation folder without the need for Admin privileges.
Screenshots
No response
NuGet package version
WinUI 3 - Windows App SDK 1.4.5: 1.4.240411001
Windows version
Windows 11 (22H2): Build 22621
Additional context
No response

I have more information.
When running the app as a normal (non Admin) user, the  x64 DLL cannot load. I get the following exception:
System.BadImageFormatException: An attempt was made to load a program with an incorrect format. (0x8007000B)
But as soon as the app runs as Admin, the DLL loads without any issue.

Have you tried doing the same thing with an application compiled for ARM64? I appreciate that the library you are trying to load may not have an ARM64 equivalent, so having a smaller test would be useful. Also, have you checked the ACL on the DLL that you are trying to load? Just to be sure that Windows didn't somehow mangle the DACL when the package was installed.

@DarranRowe Yes, I did try to build for ARM64, but the DLLs remain x64, so this does not work either.
I did not check the ACL/DACL, I never do and I can't remember having issues with it in the 30 years I work on Windows. The installed package works just fine on x64 machines and I cannot imagine that the installation is somehow different on ARM-systems, but who knows. I will take a look. Thanks for the suggestion.


[4.0.beta] Bug when trying to close more than two unsaved scripts with "Close All" or "Close Other Tabs" functions

Godot version
v4.0.beta.custom_build [3c9bf4bc2]
System information
Ubuntu 22.04.01
Issue description
When trying to close more than two unsaved scripts with "Close All" or "Close Other Tabs" functions, debugger print:
ERROR: Signal 'visibility_changed' is already connected to given callable 'ScriptEditor::_queue_close_tabs' in that object.    at: connect (core/object/object.cpp:1270)
and appear the save confirm dialog for two scripts, but other scripts are ignored.
https://user-images.githubusercontent.com/96838551/212343253-352becfc-066d-402e-bfe1-8f94f72ffd97.mp4
https://user-images.githubusercontent.com/96838551/212343296-d43f6255-f7c1-48e4-96b6-c6847dfca79b.mp4
Steps to reproduce

Open more than two scripts in the eternal script editor.
Edit all scripts.
Try use "Close All" or "Close Other Tabs" function.
Click any button in the save confirm dialog.

Minimal reproduction project
N/A

This problem still exists, though now scripts aren't ignored, but really weird things happen as you continue to press "save" (other scripts are focused and opened/closed). On the console, only the error Can't make active a Viewport that is already active. is printed.


[Windows] Add Java 21

Description
Install Java 21 to the image
Related issue: #8523
Check list

[ ] Related issue / work item is attached
[ ] Tests are written (if applicable)
[ ] Documentation is updated (if applicable)
[ ] Changes are tested and related VM images are successfully generated

/azp run windows2019,windows2022


FEATURE: Improve the republish strategy with immediateNack and dead-letter queue

Rascal's republish strategy with immediate nack adds useful error details to messages sent to a dead letter queue.
Yet, removing the immediateNack header for resending the messages back to the original queue could be a challenge in some scenarios.
Detailed Description
We configured Rascal to utilize the republish strategy with immediate nack to ensure that error details are included in messages sent to the dead letter queue. In our specific scenario, we don't intend to republish the message, but we need the error details.
However, as mentioned in the documentation, before sending a message from a dead letter queue back to the original queue, it's necessary to remove the immediateNack header.
In our use case, we require manual handling of messages within the failure queue to make decisions accordingly. Therefore, if there's a need to resend them to the original queue, removing this header is a challenge from the RabbitMQ web UI.
Is it feasible to add an option to remove the immediateNack header before nacking and routing the message to the dead letter queue? Perhaps there's a solution we've overlooked.
I want to emphasize that in this scenario, we intend to manually move the messages from the RabbitMQ web UI.
Context

By enhancing the republish strategy and/or the error details logic for the scenario described above, we could manage message flow and error handling within our system as expected, matching the implementations we already have in other languages.
Moreover, I believe this enhancement could benefit other users facing similar scenarios as it simplifies moving messages between queues.
Possible Implementation
I don't have a specific solution, but after taking a look at this piece of code in the SubscriberError combined with the check for the immediateNack in the Subscription maybe it could be modified to, based on a new configuration option that could be propagated through headers if necessary, remove the immediateNack header from the message properties once the maximum attempts have been reached and before finally nacking it.
Other ideas floating in my mind include concepts not currently available in Rascal, like user middlewares/afterwares. These could let us dive into the raw message and tweak it as needed.
I'm open to collaborating on potential solutions.
Your Environment

Version used: 20
Environment name and version (e.g. Chrome 39, node.js 5.4): Node.js 18+
Operating System and version (desktop or mobile): Linux

Hi @apehead,
Thanks for the feature request. Unfortunately when you nack a message, you can't modify it. Hence it isn't possible to remove the immediateNack header. I'll leave the issue open and have a think about if there's an alternative approach that might work

One option might be for Rascal to optionally ignore the immediateNack header based on a configurable timeout. This would allow the message to be republished until the attempts expired, then immediately nacked. Providing it sits on the DLQ for longer than the timeout, the message could be moved back to the work queue without removing the immediateNack headers. It's not perfect, but could still be useful

A similar idea to explore is whether the x-death header could be used. E.g. immediateNack only works when there is no x-death header

@cressie176 thanks a ton for jumping in on this so quickly and offering up these ideas. Truly appreciated!
I've thought about the options you mentioned and they seem like good ideas.
I'm unsure which one offers greater control over message handling with less complexity for Rascal, so I trust your judgment.
I'm all in if you need a hand with testing or contributions.

Hi @apehead,
I took a look at this over the weekend. I think the x-death header is the way to go...
The x-death header is updated automatically when a message is nacked. It holds an array of records similar to the following...
[
  {
    count: 3,
    exchange: '',
    queue: 'work_queue',
    reason: 'rejected',
    'routing-keys': [ 'work_queue' ],
    time: { '!': 'timestamp', value:<PHONE_NUMBER> }
  },
  {
    count: 1,
    exchange: '',
    queue: 'other_queue',
    reason: 'rejected',
    'routing-keys': [ 'other_queue' ],
    time: { '!': 'timestamp', value:<PHONE_NUMBER> }
  }
]

The records in the array are keyed using the queue and reason fields, so repeated nacks for the same queue and reason will increment the count, rather than inserting a new record. When rascal rejects with an immediate nack, the reason is always "rejected".
Implementing this feature can be achieved by

copying the relevant count into a new header rascal.recovery.${queue}.rejected.count where rascal sets the immediateNack header (or defaulting it to zero) See here.
ignoring and deleting the immediateNack header when the message's relevant x-death count header is greater than the recovery count stored in (1). See here

I think implementation will be straightforward, but the tests slightly cumbersome. I would expect coverage for

No x-death header
x-death header less than recovery count
x-death header count equal to recovery count
x-death header greater than recovery count
ignores irrelevant x-death header

Added for both the callback and promise tests
I can't see a downside to this feature so I think it is worth changing the behaviour of the immediateNack option, rather than adding a new option. However the documentation will also need to be updated.
If you want to have a go, please do, otherwise I can probably get to it in the week.

Available in<EMAIL_ADDRESS>

Thanks for the quick fix @cressie176! I really appreciate your dedication.
Sorry I couldn't contribute this time, but if there's another chance in the future, I'd love to help.


Add ApplicantTest SortCommandTest

Codecov Report

Merging #99 (65c41f8) into master (aac1385) will increase coverage by 2.31%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master      #99      +/-   ##
============================================
+ Coverage     68.44%   70.76%   +2.31%
- Complexity      444      459      +15
============================================
  Files            79       79
  Lines          1423     1423
  Branches        151      151
============================================
+ Hits            974     1007      +33
+ Misses          411      377      -34
- Partials         38       39       +1

Impacted Files
Coverage Δ

...rc/main/java/seedu/address/model/ModelManager.java
96.15% <0.00%> (+5.76%)
:arrow_up:

...u/address/model/applicant/UniqueApplicantList.java
83.67% <0.00%> (+6.12%)
:arrow_up:

.../main/java/seedu/address/model/applicant/Name.java
81.81% <0.00%> (+9.09%)
:arrow_up:

...ava/seedu/address/model/applicant/Scholarship.java
81.81% <0.00%> (+9.09%)
:arrow_up:

...c/main/java/seedu/address/model/TrackAScholar.java
86.20% <0.00%> (+10.34%)
:arrow_up:

.../java/seedu/address/model/applicant/Applicant.java
93.54% <0.00%> (+20.96%)
:arrow_up:

...java/seedu/address/logic/commands/SortCommand.java
90.00% <0.00%> (+90.00%)
:arrow_up:

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


Improve PPA more info fragment layout (COMMUNITY)

The PPA more information layout (Detailed Information about Data Sharing) has a few issues which this PR addresses.

Before
After

Layout does not always have space to the right.
Layout always has space to the right.

The layout uses seemingly random padding values.
The layout uses values from dimens.xml like spacing_small, spacing_normal, …. One exception is the space between bullet dot and text, which is still 13dp.

The layout uses ConstraintLayout. Each view has to reference the view above it.
The layout uses LinearLayout, TableLayout and TableRow. Views no longer need to reference the view above them. The layout becomes simpler to read and add to.

Of course, the text in this view remains unchanged.

Internal Tracking ID: EXPOSUREAPP-6712

@fynngodau Thanks. Internal Tracking ID: EXPOSUREAPP-6712

@fynngodau
thx again, works nicely 👌
But as written in your other PR, using tableviews/row & linear is not the best choice nowadays.
It would be nice if you could change your approach using constraint flow layout.. its very easy to use, fast & avoids nesting...
You will be surprised ;-)

@fynngodau we had an internal discussion. We would still like to see the implementation @BMItter recommended, but as your solution fixes a bug we'll merge it. So feel free to open a follow up PR.

I'm not certain whether I'll be able to rework the whole file again.


perf: improve RemoteTaskRunner task assignment loop performance

Description
Improve the performance of RemoteTaskRunner::tryAssignTask which consumes long periods of CPU on the Overlord during a task restart operation.
Screenshot of profiler showing long period of rtr-pending-.. task thread.

Screenshot of profile flamegraph for this thread, showing 100pc of CPU in tryAssignTask loop:

Key changed/added classes in this PR
This change:

eliminates triple nested call of getRunningTasks() in ZkWorker::toImmutable, and,
reduces the work performed in ZkWorker::isRunningTask by parsing only the id field instead of the entire ZkWorker json.

By eliminating this extra work, the loop is much tighter.
This is a change coupled to this mailing thread discussion:
https://lists.apache.org/thread/9jgdwrodwsfcg98so6kzfhdmn95gzyrj
Tests
Tests in RemoteTaskRunner*Test.java capture this functionality.

This PR has:

[x] been self-reviewed.
[x] been tested in a test Druid cluster (as a part of a larger block of changes).

Good catch. Overall LGTM. Leave a comment to you to see if we can improve more.

Some minor comments, otherwise looks good.
+1 after the above are addressed and CI passes.

HI @samarthjain @xvrl , I believe these comments have all been addressed in a633c74. I included a set of unit tests to confirm that any particular structure should be correctly read, so, I think this is good to go?

Hi, @jasonk000 - sorry, it looks like I forgot publishing my review comments. They are mostly minor.

@samarthjain squashed & rebased

+1. Thank you for your work, @jasonk000 .


[Icon Request] Support More files in Laravel

[x] I'm sure this issue is not a duplicate?
[x] I want to create an icon request:
- Type: filename
- Icon Name: artisan
[x] I want to create an icon request:
- Type: filename
- Icon Name: webpack
- Extensions: .mix.js
[x] I want to create an icon request:
- Type: filename
- Icon Name: artisan
- Extensions: .htaccess

VSCode-icons doesn't support Laravel project icons completely.

Please add this icon.

.htaccess should be covered by apache, I added it.

I don't want to install another extension for support Apache.
No i don't have suggestion for that.

I don't want to install another extension for support Apache.
No i don't have suggestion for that.

@mamadoo If you don't want to install another extension your only other options is to use the customization feature.

laravel is supported by id: blade. Looking at the extensions in the market we need to add also support for id: laravel-blade.
webpack.mix.js seems to be also used in many projects so it's a candidate for addition.
.htaccess is already supported by language id.
@robertohuertasm Thoughts?

Thanks @JimiC

da

da
==========================

@dronax what's up?


feat(codebases): Added additional features

Added additional features to the codebases page. This includes the ability to create a workspace, repo details from GitHub, various toast notifications, etc. All modified to work with Pete's router outlet.
NOTE: The listView component was also modified to support empty state, headers, etc. Therefore, this PR requires https://github.com/fabric8-ui/ngx-widgets/pull/63 to be merged first

There were the following issues with your Pull Request

Commit: 017c408321a9f0740b3ac697e1e210fd863b3500
Your subject line is longer than 50 characters

Guidelines are available at https://github.com/fabric8io/fabric8-ui

This message was auto-generated by https://gitcop.com

There were the following issues with your Pull Request

Commit: be617e646e4e88b2396c300e99e910b11ea8dc9d
Your subject line is longer than 50 characters

Guidelines are available at https://github.com/fabric8io/fabric8-ui

This message was auto-generated by https://gitcop.com

There were the following issues with your Pull Request

Commit: 7f6cbf35c3951892a2cec3637b22f2091beaf1da
Your subject line is longer than 50 characters

Guidelines are available at https://github.com/fabric8io/fabric8-ui

This message was auto-generated by https://gitcop.com

[test]

There were the following issues with your Pull Request

Commit: aa5c00db39f1ac86c06d6b360d09d8a9cfe949fa
Your subject line is longer than 50 characters

Guidelines are available at https://github.com/fabric8io/fabric8-ui

This message was auto-generated by https://gitcop.com

[test]

There were the following issues with your Pull Request

Commit: 9309c49d988e181a8d4d62f4160ca244b7a58061
Your subject line is longer than 50 characters

Guidelines are available at https://github.com/fabric8io/fabric8-ui

This message was auto-generated by https://gitcop.com

There were the following issues with your Pull Request

Commit: 02ae6aa33230de8d99f6f45349454564f760f45d
Your subject line is longer than 50 characters

Guidelines are available at https://github.com/fabric8io/fabric8-ui

This message was auto-generated by https://gitcop.com

There were the following issues with your Pull Request

Commit: e5c232bcfce0a68b2b900fed16a43ad7994996c5
Your subject line is longer than 50 characters

Guidelines are available at https://github.com/fabric8io/fabric8-ui

This message was auto-generated by https://gitcop.com


[db] Implement Delete All (HashMap::clear)

Need convenience functions to clear all in DB

Closed by #8


[CHANGELOG] Add deprecation notice for Divider

Extended the short description of the chang and simply c&p the explanation from #13574.

Oops, I have forgotten about it! 💯


matrix-synapse: 1.2.1 -> 1.3.0

Motivation for this change
https://github.com/matrix-org/synapse/releases/tag/v1.3.0
Performance improvements mostly. Added sd_notify due to https://github.com/matrix-org/synapse/issues/5732
Things done

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

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

[x] 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 nix-review --run "nix-review wip"
[ ] 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.

Notify maintainers
cc @pacien @Ekleog

Off-Topic
I created a channel for the coordination / discussion of the matrix subsystem.
Feel free to join! #matrix-nix:transformierende-gesellschaft.org :spider_web:

How about changing the nixos module as well to make use of this?

@ofborg build nixosTests.matrix-synapse

@peterhoeg
You mean Type=notify in the systemd unit? Is there anything more to do?
I will be able to do in the next days!

You mean Type=notify in the systemd unit?

Yep.

Is there anything more to do?

Don't think so.

I changed the module as well.
Please keep in mind that config.package now needs to have sd-notify support.

Seems like v1.3.1 dropped the the sdnotify dependency again. Seems like they implemented the functionality manually.

I will update the branch asap.

replaced by #66814


[Code UI] Qiskit Textbook Formulas Overlapping

When reviewing the Qiskit textbook on Safari formulas show as overlapping. This is only an issue when using Safari, other browsers look fine.

Duplicate of https://github.com/Qiskit/platypus/issues/709


lib: os: cbprintf: Tweak Z_CBPRINTF_PCHAR_COUNT macro for vscode

VSCode macro parser was notifying errors in logging macros. The reason
was char pointer counting macro that VSCode seen as being called with
no enough parameters. There was no issue in the macro so change is
rather to cover for VSCode annoyance.
Issue reported:github.com/microsoft/vscode-cpptools/issues/9187
Additionally, minor change added to log as CBPRINTF_MUST_RUNTIME_PACKAGE
is no longer accepting empty arguments.
Signed-off-by: Krzysztof Chruscinski<EMAIL_ADDRESS>

The VSCode-Bug is annoying...


Appstudio update test-component-pac-uqbs

Pipelines as Code configuration proposal

Pipelines as Code CI/test-component-pac-uqbs-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
5 seconds
init

✅ Succeeded
11 seconds
clone-repository

✅ Succeeded
28 seconds
build-container

✅ Succeeded
25 seconds
inspect-image

✅ Succeeded
6 minutes
deprecated-base-image-check

✅ Succeeded
11 seconds
clair-scan

✅ Succeeded
5 minutes
clamav-scan

✅ Succeeded
9 seconds
sbom-json-check

✅ Succeeded
6 minutes
optional-label-check

✅ Succeeded
7 seconds
label-check

✅ Succeeded
1 minute
show-summary

✅ Succeeded
1 minute
show-sbom

Pipelines as Code CI/test-component-pac-uqbs-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
5 seconds
init

✅ Succeeded
11 seconds
clone-repository

✅ Succeeded
28 seconds
build-container

✅ Succeeded
25 seconds
inspect-image

✅ Succeeded
6 minutes
deprecated-base-image-check

✅ Succeeded
5 minutes
clamav-scan

✅ Succeeded
11 seconds
clair-scan

✅ Succeeded
9 seconds
sbom-json-check

✅ Succeeded
6 minutes
optional-label-check

✅ Succeeded
7 seconds
label-check

✅ Succeeded
1 minute
show-sbom

✅ Succeeded
1 minute
show-summary


[WIP]  LookAhead fix for mixed

Description
Brief Description of the PR:
A naive solution.
Fixes # (issue)
2403
I still think delegating the _hyper dictionary of the inner optimizer(in our case Rectified Adam) would be a better solution, but I'm getting an infinite loop in that case. That'd be the best solution imo, I'd like to discuss how to fix that.
A few test fails as of now

@cyberzhg
You are owner of some files modified in this pull request.
Would you kindly review the changes whenever you have the time to?
Thank you very much.

Hi @reedwm I really like your approach  on this. However, I face two problems

If we relay our _hyper dict to the internal_optimizer (say RectifiedAdam), then we will lose our original _hyper dict. For ex: In LookAhead the original _hyper dict has these two params sync_period and slow_step_size.
I went ahead and did it anyway, and I got maximum recursion depth reached error.

  File "/home/psykik/PycharmProjects/addons/tensorflow_addons/optimizers/lookahead.py", line 175, in _hyper
    return self._optimizer.hyper
  File "/home/psykik/PycharmProjects/addons/venv/lib/python3.8/site-packages/tensorflow/python/keras/optimizer_v2/optimizer_v2.py", line 788, in __getattribute__
    return super(OptimizerV2, self).__getattribute__(name)
RecursionError: maximum recursion depth exceeded while calling a Python object

Hmmm, I suspected delegating _hyper might be iffy. I will take a look next week and try to come up with a solution.
A public API to expose hyperaparameters would fix this, as then LossScaleOptimizer could use that API instead of using _hyper, and Lookahead could override the API. But it's much better to avoid adding a public API if possible.

Acked, but the LossScaleOptimizer is inside the official tensorflow repo. Imo, there's no cleaner way of doing it without meddling with the official repo.
I have a stand-in solution though, how about we add another hyper parameter named learning_rate to the LookAhead. Basically, it's a copy of the learning_rate parameter of the internal_optimizer, and we will update both of them parallely.  This way learning_rate hyper param will be found inside the _hyper dict of LookAhead.

I've just triggered the CI to investigate side effects on tests with https://github.com/tensorflow/tensorflow/pull/47449

All the tests should pass.
My approach:

Create a stand-in hyperparameter inside LookAhead class, with the same name learning_rate. This way learning_rate will be found in _hyper dictionary.

Override the set_attr of the OptimizerV2.py inside LookAhead so that it sets the learning_rate of the internal optimizer.

Closing this PR in favor of  tensorflow/tensorflow#47449


order_by_type setting default switched from True to False?

In 48718ce5cc6303d16a642677306bf196001ed196, the default value of order_by_type was switched from True to False. Was it intentional? If so, I didn't see any indication of it in the change log.
This change seems to be backwards incompatible as it causes isort to suggest changes like this:
diff --git a/django/apps/registry.py b/django/apps/registry.py
index 46c10ef..d31009a 100644
--- a/django/apps/registry.py
+++ b/django/apps/registry.py
@@ -1,7 +1,7 @@
 import sys
 import threading
 import warnings
-from collections import Counter, OrderedDict, defaultdict
+from collections import Counter, defaultdict, OrderedDict
 from functools import partial

 from django.core.exceptions import AppRegistryNotReady, ImproperlyConfigured

Hi @timgraham,
Thanks for pointing this out! This was certainly not intentional, I've created and pushed a hot fix release 4.1.2 to quickly resolve this issue.
Thanks!
~Timothy

Thank you for the quick resolution.


Provide sha256 with release

I want to automate the installation of Goss onto some host machines. For completeness, I want to check the SHA sum of the binary I am pulling from Github. Please provide an 'official' sha256 for each release.

Would also <3 this

This issue has been approved here #447
Thanks for asking for this.


Programs: Sort order changed

The programs are not in the same order from the new to old site

changed to alpha sort by name, there is no facility to sort dynamically

OK - that's cool


Embedding iFrame into workbook does not work

Have tried various different methods of displaying an iframe in a workbook but none of them work, the workbook just produces a blank box.
The same code when run in a Jupyter Notebook works...
from IPython.display import IFrame
IFrame('http://stackoverflow.org', width=700, height=350)

Appreciate getting put in the backlog chlafreniere any chance you could use words and let me know when a fix might be or a work around I could use?


bug: Iam * no policy wildcard - rds Cluster-snapshot backup

Describe the bug
We found that no-policy-wildcard is tripping on a well formatted IAM block. It may be not handled in the code here: IAM-Func
To Reproduce
Using iam statement
statement {
    actions = [
      "rds:DeleteDBClusterSnapshot",
      "rds:ModifyDBClusterSnapshotAttribute"
    ]
    effect    = "Allow"
    resources = ["arn:aws:rds::${account_id}:cluster-snapshot:awsbackup:*"]

no-policy-wildcard  is reported no matter what we change. Keeping in mind that auto generated label is created.
Expected behavior
If the specific actions labeled and concise, should pass
Output of your tfsec command with --debug flag

System Info

tfsec version: latest
terraform version: latest
OS: NA

It smells like we might need to add logic like s3. but maybe there is a smarter way (no copy pasta)
if strings.HasSuffix(resource, "/*") && strings.HasPrefix(resource, "arn:aws:s3")

Hi,
To add to this issue, starting from defsec v0.74.0, the IAM no_policy_wildcards vulnerability is not detected anymore when running defsec on the no_policy_wildcards.tf.go file.
It seems like it is because of the addition of the CIS_AWS_1_4 framework in this commit.

Hi @coobachey - I think it's likely tripping because of the wildcard at the end of the resource identifier? Does it still report when you use specific resource names?
@amascia Thanks, this will be fixed today.

You are correct  it is seeing the *  at end for one part.
It does trip when we use specific resource,  we placed a "somestring*"  at the end.  I think its due to the check requiring Pre string "arn:aws:s3" and end of "/"
At least I am perceive it that way.  So on this particular Database backups, the arn string is built differently, further we cannot know what appended string will start with as there is auto generated data when snapshot is created (aws automation).
arn:aws:rds.  ...   :
"arn:aws:rds::${account_id}:cluster-snapshot:awsbackup:*"
Have to run but i'll try and get back around this week for more details

Closing as this appears to be resolved. Please reopen if required


Extend Arrays In Tsconfig

🔍 Search Terms
I am unable to use both tsconfig.base paths (nx monorepo libs) and tsconfig.local paths (relative path cleanup).
Good solutions are mentioned here https://github.com/microsoft/TypeScript/issues/20110
Opening this with another issue because that one is from 2017 and seems to largely have fallen off the radar
✅ Viability Checklist

[X] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[X] This wouldn't change the runtime behavior of existing JavaScript code
[X] This could be implemented without emitting different JS based on the types of the expressions
[X] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, new syntax sugar for JS, etc.)
[X] This feature would agree with the rest of our Design Goals: https://github.com/Microsoft/TypeScript/wiki/TypeScript-Design-Goals

⭐ Suggestion
An <inherit> peoprty for tsconfig files. See here for more: https://github.com/microsoft/TypeScript/issues/20110
📃 Motivating Example
See here for more: https://github.com/microsoft/TypeScript/issues/20110
💻 Use Cases

What do you want to use this for?
What shortcomings exist with current approaches?
What workarounds are you using in the meantime?

There's no point in making another issue if there's already one open.

Making duplicates on purpose is a misuse of the issue tracker and is not appropriate behavior. Further violations will result in a block.


Update Hosting ASP.NET Core Images with Docker  or move to /dotnet/dotnet-docker

@mthalman would you be able to help either getting this migrated to https://github.com/dotnet/dotnet-docker or updated for .NET 7? You just need to get the instructions correct in a PR and I'll edit and clean up.

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 3e087007-7838-e0f9-d713-22182a5d9704
Version Independent ID: 2f32c7c3-8667-0e88-495b-c0c888572964
Content: Hosting ASP.NET Core Images with Docker over HTTPS
Content Source: aspnetcore/security/docker-https.md
Product: aspnet-core
Technology: aspnetcore-security
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

@Rick-Anderson - There are no changes necessary to update the doc for .NET 7. The doc uses the mcr.microsoft.com/dotnet/core/samples:aspnetapp image name automatically gets updated to the next .NET version when we make the necessary changes to upgrade it in https://github.com/dotnet/dotnet-docker. That was already done in https://github.com/dotnet/dotnet-docker/pull/3989. Everything in the doc is compatible between .NET 6 and 7.

@mthalman I was just saying .NET 7 because if you were to update it, makes sense to update for .NET 7. It was never updated for .NET 6. The history shows the topic hasn't been updated in several years. Most of the history is from the history polluting global doc meta-data updates.  Can you verify it's up to date for .NET 6?

The doc has only one version and seems badly out of date. We normally use monikers for each version. I can make duplicates of the content with as many versions as you like.
## Prerequisites

The [.NET Core 2.2 SDK](https://dotnet.microsoft.com/download)

That should be the SDK version of the moniker section.
What versions should we support? 7,6,5.1,3.1 ?
Can create the multi version moniker file for you.

@mthalman I'll make 3.1, 6.0, 7.0. versions. You can update the images for each version.

We don't have separate sample image tags for each version. We provide one tag that gives you the latest version. So there's no change to be made for those.

OK, we'll tell them to use the SDK for the version they are targeting. and provide links to 3.1, 6, & 7


[Q] How to get alignment info after reading an xlsx file ?

Is it possible to get the cell alignment info from the sheet object. As I found the alignment of the cell was always undefined.

@Gitturtle You can try the following code.
const ExcelJS = require('exceljs');

const workbook = new ExcelJS.Workbook();
workbook.xlsx.readFile('./read/issue_1206.xlsx').then(function() {
  var ws = workbook.getWorksheet(1);
  const alignments = ws.getCell('A1').alignment;
  console.log('alignments==>', alignments);
});

Thanks to @Alanscut , but the result was always undefined. Does the exceljs parsed alignment of cell correctly?

@Gitturtle Can you provide a file and example? This is more conducive to solving problems.

@Alanscut you got the right alignment info? I used the code you provided before. File is very simple. Create a xlsx file by libreoffice, set a cell value and align the text whatever.

@Gitturtle In both cases, I can get the right information.You can try to change the suffix name of xlsx to zip, then unzip it, check the style.xml file.
// style.xml
  <cellXfs count="2">
    <xf numFmtId="0" fontId="0" fillId="0" borderId="0" xfId="0" />
    <xf numFmtId="0" fontId="0" fillId="0" borderId="0" xfId="0" applyAlignment="1">
      <alignment horizontal="center" vertical="center" />
    </xf>
  </cellXfs>

Thanks for opening this request.
Please re-open if you still have issues.
Best of luck.


Can't run on Windows 10

Any ideas for debugging?
D:\Downloads\zoc-master\zoc-master>cargo run
Running target\debug\zoc.exe
GL_VERSION: 4.5.0 NVIDIA 365.19
GLSL_VERSION: 4.50 NVIDIA
GL_VENDOR: NVIDIA Corporation
GL_RENDERER: GeForce GTX 660 Ti/PCIe/SSE2
thread '' panicked at '0(1) : error C0000: syntax error, unexpected $undefined, expecting "::" at token ""
', src\zgl\src\shader.rs:168
note: Run with RUST_BACKTRACE=1 for a backtrace.
Process didn't exit successfully: target\debug\zoc.exe (exit code: 101)

Hmm, try changing OpenGL version from 2.0 to 2.1 in src/visualizer/src/lib.rs#L38.

Hmmm, https://github.com/PistonDevelopers/piston/issues/1032 has similar errmsg.

Tried, no success :(
D:\Downloads\zoc-master\zoc-master>cargo run
Compiling visualizer v0.0.1 (file:///D:/Downloads/zoc-master/zoc-master)
Compiling zoc v0.0.1 (file:///D:/Downloads/zoc-master/zoc-master)
Running target\debug\zoc.exe
GL_VERSION: 4.5.0 NVIDIA 365.19
GLSL_VERSION: 4.50 NVIDIA
GL_VENDOR: NVIDIA Corporation
GL_RENDERER: GeForce GTX 660 Ti/PCIe/SSE2
thread '' panicked at '0(1) : error C0000: syntax error, unexpected $undefined, expecting "::" at token ""
', src\zgl\src\shader.rs:168
note: Run with RUST_BACKTRACE=1 for a backtrace.
Process didn't exit successfully: target\debug\zoc.exe (exit code: 101)

Than try removing whole .with_gl(gl_version) line :) .
If this will not help - can you check if triangle.rs example from glium works on your machine?

My friends reported similar problems on win10, but glium works fine for them.
Something wrong with initialization code in ZoC :(

Have you tried anything to make this work since? ^^
2016-05-19 21:59 GMT+02:00 Andrey Lesnikov<EMAIL_ADDRESS>
My friends reported similar problems on win10, but glium works fine for
them.
Something wrong with initialization code in ZoC :(
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/ozkriff/zoc/issues/170#issuecomment-220433920

I have tried a few things, but nothing seems to work. Android build is broken too :( . It seems that the simplest solution will be #9.

Should be fixed in #183 :)

@ricklamers Can you check how it works now?

It works for me! Awesome, going to try it more in depth soon :)
2016-07-29 15:08 GMT+02:00 Andrey Lesnikov<EMAIL_ADDRESS>
@ricklamers https://github.com/ricklamers Can you check how it works
now?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ozkriff/zoc/issues/170#issuecomment-236175608, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABP6e5qa7wp4DrufKAXuhojrXiDh1ZEJks5qaftCgaJpZM4Ihv0Y
.

Yay! :-D


Don't pollute the top level namespace

Keep the functions and vector and matrix classes in the dsga namespace. If someone wants them at the top level, then they can do their own using namespace dsga;
Need to also not pollute the dsga namespace with helper functions. Make sure that they are in nested detail namespaces.

Release v0.5.0 resolves this issue


[wip] Add PlatformConfiguration CRD & Controller

CRD for configuring platforms
Issue #674
Introduced a ProviderPlatform kind to manage creation of platform related resources.

This allows for a hypershift guest creation without a hypershift cli command, but leverages shared code paths
This is one of the ManagedService scenarios we are looking into where control plane and worker plane are owned by the service

Next steps

[x] Rename ProviderPlatform to PlatformConfiguration for the kind
[x] Add all resources currently being created for the HostedCluster and NodePool to the CRD
[x] Figure out which resources are required by the control plane and which are required by the worker plane so they can be split up

Finished the rename from ProviderPlatform for PlatformConfiguration.

/test e2e-aws

After a review with the team, it was decided that introducing a Platform resource was not a priority at this time.  We will revisit the discussion once CNV, IBM and Assisted integration is finished to see if it makes sense.
I have taken design considerations from this, and will implement a more tagging style infrastructure deploy for ACM following the hypershift CLI and openshift install approach.  The work can be found here: https://github.com/jnpacker/hypershift-curator-controller


Pruning callback causes GPU memory leak when used iteratively

Discussed in https://github.com/PyTorchLightning/pytorch-lightning/discussions/8363

Originally posted by MohammedAljahdali July 10, 2021
Hi, I have a script that does the following logic:
model = Model()
dm = DataModule()
callback_a = ModelPruning()
for _ in range(N):
     callbacks = [CallbackB(), CallbackC(), callback_a]
     trainer = Trainer(callbacks=callbacks, ...)
     trainer.fit(model, dm)
     trainer.test()

There is much more going on, but to keep it simple this is the flow that I have, my question is there another preferable way to what I just did? Also, in my code I have some memory leak, that happens after each loop iteration, could this be somehow related to the trainer object, not being deleted properly?
After trying to reproduce the issue with the boring model, it turned out that the cause of the momery leak is not the reinitialization of the trainer, but the pruning callback itself.
Dependices:
  - python=3.8
  - pip
  - cudatoolkit=10.2
  - pytorch=1.8.1
  - torchvision=0.9.1
  - pytorch-lightning>=1.3.2
  - torchmetrics>=0.3.2
  - wandb>=0.10.30

Code to reproduce:
import os
import gc

import torch
from torch.utils.data import DataLoader, Dataset
from torch import nn
import wandb
from pytorch_lightning import LightningModule, Trainer, LightningDataModule
from pytorch_lightning.loggers import WandbLogger
import torchvision
import pytorch_lightning as pl
import numpy as np
from typing import Any, Callable, Dict, List, Optional, Tuple, Union
from pytorch_lightning.utilities.distributed import rank_zero_only
from collections import OrderedDict, defaultdict

class DM(LightningDataModule):

    def __init__(self, n_features, n_samples, batch_size):
        super().__init__()
        self.train_dataset = torchvision.datasets.CIFAR10(root='/tmp', download=True,
                                                          transform=torchvision.transforms.ToTensor())
        self.val_dataset = torchvision.datasets.CIFAR10(root='/tmp', transform=torchvision.transforms.ToTensor())
        self.test_dataset = torchvision.datasets.CIFAR10(root='/tmp', transform=torchvision.transforms.ToTensor())
        self.batch_size = batch_size

    def setup(self, stage=None):
        pass

    def train_dataloader(self):
        return DataLoader(
            dataset=self.train_dataset,
            batch_size=self.batch_size,
            shuffle=True
        )

    def val_dataloader(self):
        return DataLoader(
            dataset=self.val_dataset,
            batch_size=self.batch_size,
            shuffle=False
        )

    def test_dataloader(self):
        return DataLoader(
            dataset=self.test_dataset,
            batch_size=self.batch_size,
            shuffle=False
        )

class BoringModel(LightningModule):

    def __init__(self, in_features):
        super().__init__()
        self.run_id = 0
        self.test_counter = 0
        self.net = torchvision.models.resnet18()
        self.net.fc.is_classifier = True
        self.loss = torch.nn.CrossEntropyLoss()

    #         self.layer = torch.nn.Sequential(
    #             torch.nn.Linear(in_features, in_features // 2),
    #             torch.nn.ReLU(),
    #             torch.nn.Linear(in_features // 2, in_features // 4),
    #             torch.nn.ReLU(),
    #             torch.nn.Linear(in_features // 4, in_features // 8),
    #             torch.nn.ReLU(),
    #             torch.nn.Linear(in_features // 8, 2),
    #         )

    def forward(self, x):
        return self.net(x)

    def training_step(self, batch, batch_idx):
        loss = self.loss(self(batch[0]), batch[1])
        self.log(f"train_loss {self.run_id}", loss)
        return {"loss": loss}

    def validation_step(self, batch, batch_idx):
        loss = self.loss(self(batch[0]), batch[1])
        self.log(f"valid_loss {self.run_id}", loss)

    def test_step(self, batch, batch_idx):
        loss = self.loss(self(batch[0]), batch[1])
        self.log(f"test_loss {self.run_id}", loss)

    def configure_optimizers(self):
        return torch.optim.SGD(self.net.parameters(), lr=1)

def run():
    in_features = 224
    N = 20
    dm = DM(n_samples=40, n_features=in_features, batch_size=256)
    model = BoringModel(in_features=in_features)
    loggers = [WandbLogger(project='test_runs', save_dir='/tmp')]
    pruning_callback = pl.callbacks.ModelPruning(
        apply_pruning=True, use_lottery_ticket_hypothesis=True,
        pruning_fn='l1_unstructured', use_global_unstructured=True, verbose=1, make_pruning_permanent=False,
        amount=0.5
    )

    for i in range(N):
        callbacks = [
            pl.callbacks.ModelCheckpoint(monitor=f"valid_loss {model.run_id}", save_top_k=1, save_last=True),
            pl.callbacks.EarlyStopping(monitor=f"valid_loss {model.run_id}", )
        ]
        callbacks.append(pruning_callback)
        trainer = Trainer(
            default_root_dir='/tmp',
            limit_train_batches=4,
            limit_val_batches=4,
            limit_test_batches=4,
            num_sanity_val_steps=0,
            max_epochs=5,
            logger=loggers,
            gpus=1,
            callbacks=callbacks
        )

        trainer.fit(model, datamodule=dm)
        trainer.test(model, ckpt_path='best')
        trainer.test(model)
        model.run_id += 1
        counter = 0
        for obj in gc.get_objects():
            try:
                if torch.is_tensor(obj) or (hasattr(obj, 'data') and torch.is_tensor(obj.data)):
                    counter += 1
            except:
                pass
        print(f"Number of tensors after level {i - 1} is {counter}")

if __name__ == '__main__':
    run()

Dear @MohammedAljahdali,
Mind trying out master. We should have resolved this problem. Mind confirming ?
Best,
T.C

Dear @tchaton,
I tried pl 1.5.0.dev0 and 1.4.1, on my code base the issue still happens, although something weird occur, the number of tensors after each pruning iteration does not always increase:
Number of tensors after level 0 is 6166
Number of tensors after level 0 is 6166

Number of tensors after level 1 is 7249
Number of tensors after level 1 is 7249

Number of tensors after level 2 is 12161
Number of tensors after level 2 is 12160

Number of tensors after level 3 is 17079
Number of tensors after level 3 is 17079

Number of tensors after level 4 is 10493
Number of tensors after level 4 is 10493

Number of tensors after level 5 is 11576
Number of tensors after level 5 is 11575

Number of tensors after level 6 is 16489
Number of tensors after level 6 is 16488

Number of tensors after level 7 is 13739
Number of tensors after level 7 is 13739

Number of tensors after level 8 is 17014
Number of tensors after level 8 is 17013

Number of tensors after level 9 is 15909
Number of tensors after level 9 is 15907

I call torch.cuda.empty_cache() between prints and sometimes it remove a tensor or two.
As for when I tested pl 1.4.1 and 1.5.0 with the boring model I got the following issue:
Traceback (most recent call last):
  File "/home/aljahdmk/projects/shrinkbench/pruning_leak.py", line 123, in <module>
    run()
  File "/home/aljahdmk/projects/shrinkbench/pruning_leak.py", line 109, in run
    trainer.fit(model, datamodule=dm)
  File "/home/aljahdmk/miniconda3/envs/nnp-nas-2/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 553, in fit
    self._run(model)
  File "/home/aljahdmk/miniconda3/envs/nnp-nas-2/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 862, in _run
    self.call_hook("on_before_accelerator_backend_setup", model)
  File "/home/aljahdmk/miniconda3/envs/nnp-nas-2/lib/python3.8/site-packages/pytorch_lightning/trainer/trainer.py", line 1217, in call_hook
    trainer_hook(*args, **kwargs)
  File "/home/aljahdmk/miniconda3/envs/nnp-nas-2/lib/python3.8/site-packages/pytorch_lightning/trainer/callback_hook.py", line 42, in on_before_accelerator_backend_setup
    callback.on_before_accelerator_backend_setup(self, model)
  File "/home/aljahdmk/miniconda3/envs/nnp-nas-2/lib/python3.8/site-packages/pytorch_lightning/callbacks/pruning.py", line 385, in on_before_accelerator_backend_setup
    self._original_layers.setdefault(id_, _LayerRef(data=deepcopy(module), names=[]))
  File "/home/aljahdmk/miniconda3/envs/nnp-nas-2/lib/python3.8/copy.py", line 172, in deepcopy
    y = _reconstruct(x, memo, *rv)
  File "/home/aljahdmk/miniconda3/envs/nnp-nas-2/lib/python3.8/copy.py", line 270, in _reconstruct
    state = deepcopy(state, memo)
  File "/home/aljahdmk/miniconda3/envs/nnp-nas-2/lib/python3.8/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/home/aljahdmk/miniconda3/envs/nnp-nas-2/lib/python3.8/copy.py", line 230, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/home/aljahdmk/miniconda3/envs/nnp-nas-2/lib/python3.8/copy.py", line 153, in deepcopy
    y = copier(memo)
  File "/home/aljahdmk/miniconda3/envs/nnp-nas-2/lib/python3.8/site-packages/torch/tensor.py", line 55, in __deepcopy__
    raise RuntimeError("Only Tensors created explicitly by the user "
RuntimeError: Only Tensors created explicitly by the user (graph leaves) support the deepcopy protocol at the moment

This is the boring model code:
import gc

import torch
from torch.utils.data import DataLoader

from pytorch_lightning import LightningModule, Trainer, LightningDataModule
from pytorch_lightning.loggers import WandbLogger
import torchvision
import pytorch_lightning as pl

class DM(LightningDataModule):

    def __init__(self, n_features, n_samples, batch_size):
        super().__init__()
        self.train_dataset = torchvision.datasets.CIFAR10(root='/tmp', download=True,
                                                          transform=torchvision.transforms.ToTensor())
        self.val_dataset = torchvision.datasets.CIFAR10(root='/tmp', transform=torchvision.transforms.ToTensor())
        self.test_dataset = torchvision.datasets.CIFAR10(root='/tmp', transform=torchvision.transforms.ToTensor())
        self.batch_size = batch_size

    def setup(self, stage=None):
        pass

    def train_dataloader(self):
        return DataLoader(
            dataset=self.train_dataset,
            batch_size=self.batch_size,
            shuffle=True
        )

    def val_dataloader(self):
        return DataLoader(
            dataset=self.val_dataset,
            batch_size=1,
            shuffle=False
        )

    def test_dataloader(self):
        return DataLoader(
            dataset=self.test_dataset,
            batch_size=1,
            shuffle=False
        )

class BoringModel(LightningModule):

    def __init__(self, in_features):
        super().__init__()
        self.run_id = 0
        self.test_counter = 0
        self.net = torchvision.models.resnet18()
        self.net.fc.is_classifier = True
        self.loss = torch.nn.CrossEntropyLoss()

    def forward(self, x):
        return self.net(x)

    def training_step(self, batch, batch_idx):
        loss = self.loss(self(batch[0]), batch[1])
        self.log(f"train_loss {self.run_id}", loss)
        return {"loss": loss}

    def validation_step(self, batch, batch_idx):
        loss = self.loss(self(batch[0]), batch[1])
        self.log(f"valid_loss {self.run_id}", loss)

    def test_step(self, batch, batch_idx):
        loss = self.loss(self(batch[0]), batch[1])
        self.log(f"test_loss {self.run_id}", loss)

    def configure_optimizers(self):
        return torch.optim.SGD(self.net.parameters(), lr=1)

def run():
    in_features = 224
    N = 20
    dm = DM(n_samples=40, n_features=in_features, batch_size=256)
    model = BoringModel(in_features=in_features)
    loggers = [WandbLogger(project='test_runs', save_dir='/tmp')]
    pruning_callback = pl.callbacks.ModelPruning(
        apply_pruning=True, use_lottery_ticket_hypothesis=True,
        pruning_fn='l1_unstructured', use_global_unstructured=True, verbose=1, make_pruning_permanent=False,
        amount=0.2,
    )

    for i in range(N):
        callbacks = [pl.callbacks.ModelCheckpoint(monitor=f"valid_loss {model.run_id}", save_top_k=1, save_last=True),
                     pl.callbacks.EarlyStopping(monitor=f"valid_loss {model.run_id}", ), pruning_callback]
        trainer = Trainer(
            default_root_dir='/tmp',
            limit_train_batches=4,
            limit_val_batches=4,
            limit_test_batches=4,
            num_sanity_val_steps=0,
            max_epochs=5,
            logger=loggers,
            gpus=1,
            callbacks=callbacks,
            log_every_n_steps=2
        )

        trainer.fit(model, datamodule=dm)
        # trainer.test(ckpt_path='best')
        # trainer.test(model, ckpt_path=None)
        model.run_id += 1
        counter = 0
        for obj in gc.get_objects():
            try:
                if torch.is_tensor(obj) or (hasattr(obj, 'data') and torch.is_tensor(obj.data)):
                    counter += 1
            except:
                pass
        print(f"Number of tensors after level {i} is {counter}")

if __name__ == '__main__':
    run()

Kindest regards,

Mohammed

Hi @tchaton,
From what I gather from the recent changes to the pruning callback, is the issue supposed to be solved by the addition of preventing deep copy of dataloaders? If yes? Then where in the pruning callback is it applied? Because I only found it used in the stochastic weight averaging.
And if you could point to me where this issue is caused or how I could help in solving it I would gladly help.

I investigated the issue and it seems that the error
RuntimeError: Only Tensors created explicitly by the user (graph leaves) support the deepcopy protocol at the moment
happens because we're trying to deep copy parameters that are not explicitly defined by the user but are rather existing deep copies.
So going through the pruning code, we call on_before_accelerator_backend_setup, which deep copies self._parameters_to_prune to self._original_layers. When self.on_train_epoch_end is called, that function calls self.apply_lottery_ticket_hypothesis(), which reassigns the data in self._parameters_to_prune with weights from self._original_layers, which are deep copies.
So when on_before_accelerator_backend_setup is called again, the error above is raised because we are trying to deep copy data that are already deep copies and not explicitly defined by the user.
I don't think a pull request is needed to solve this issue. I think if you reinitialize the BoringModel within the for loop and save and load the weights into that, your code should work fine.
So something like:
weights = None
for i in range(N):

        model = BoringModel(in_features=in_features)
        load_weights(model, weights)
        pruning_callback = ...

       trainer = ...
       trainer.fit()
       weights = get_weights(model)


how to use jetcd

where is api document of jetcd?

https://www.javadoc.io/doc/com.coreos/${artifactId}/${version}


Translucent skin see-through error.

Translucent outer layer of Minecraft skin material will result in a translucent torso in the first person, directly see the ground behind the skin.

Probably more related to 3d Skin Layers.

Probably more related to 3d Skin Layers.

I tried removing all my modules, leaving only 3dskin and first person, the problem disappeared and I will continue testing.
I think it might be the "sodium" or rendering optimization mod.

Yea, sodium currently doesn't do transparency sorting. this causes a lot of issues in other places too. Reference: https://github.com/CaffeineMC/sodium-fabric/issues/38

The good news is that the problem is not caused by "sodium".
Bad news, I need to continue to find out which mod is causing the problem.

I found the culprit and the problem was caused by "iris", although I didn't do anything with it.

Yea, Iris modifies a bit how the Sodium pipeline works. I guess for now either leave the pants 2d(might work), don't have the transparent pixels in there, or maybe try if having some shader turned on fixes it? But yea, transparency in Minecraft is a mess, and as long as Sodium+Iris are not done fully implementing the translucent sorting, stuff like this is kinda not preventable.

The shader can't modify it in any effective way, and I don't think it's right to "make the feet smaller if the shoe doesn't fit". I think this problem should be solved by iris, but as you can see, modifying Minecraft's rendering engine is an unappealing and uncomfortable thing to do.

Closing this as translucent sort is nothing I can do about.


singleton approach

taking the suggestion of using a singleton mapper provided by @kitbag/router
types are all set with Register interface, profiles are loaded with new mapper.register method

This feels nice. I like how the mapper already exists and you just register the profiles. Both by registering the type and by registering the actual functions.
I love that you can just import mapper from '@kitbag/mapper'.

Agreed. It's quite nice in practice. Get good errors if you register type without actual functions as well as if you try mapping with profile that doesn't exist without registering types.
I briefly tried combining the logic for loadProfiles into same call as mapper.register but gave up. Load profiles is just a convenience method for grabbing profiles from your barrel import.
I'm happy to have some more tests written as well. Need docs next.

I briefly tried combining the logic for loadProfiles into same call as mapper.register but gave up. Load profiles is just a convenience method for grabbing profiles from your barrel import.

@stackoverfloweth what do you mean here? How would you use loadProfiles and register?

I briefly tried combining the logic for loadProfiles into same call as mapper.register but gave up. Load profiles is just a convenience method for grabbing profiles from your barrel import.

@stackoverfloweth what do you mean here? How would you use loadProfiles and register?

if you have your profiles in an array, you can just call register.
However, I wanted to provide a way to register your profiles automatically with nothing more than a barrel in your maps folder
import * as loaded from '@/maps'

const profiles = loadProfiles(loaded)

mapper.register(profiles)

declare module '@kitbag/mapper' {
  interface Register {
    profiles: typeof profiles,
  }
}

the loadProfiles step takes your import and returns Profile[]
https://github.com/kitbagjs/mapper/blob/main/src/loadProfiles.ts


Computer craft compatibility draft for 1.20.1 branch.

This pull request is a draft for adding Computer Craft:Tweaked compatibility to 1.20.1 branch. (currently the 1.20.1 branch crashes when run together with Computer Craft)
Please provide comments on every change I should make to this PR.

I appreciate the PR, but the compat must remain as similar to the forge version as possible. I will take care of it eventually.


Road labels should be centered on geom (like WebGL)

Tangram ES should match the WebGL implementation and center road labels on the line geometry.

After a quick look it seems that it's a bounding box issue (being bigger than they should be) and not a centering issue.

Fixing the bouding boxes should fix that.