Inconsistent Data Format Returned from onPaymentResult Function

Issue Description:
The current behavior of the onPaymentResult function in the package is causing inconsistency in the format of payment result data between Android and iOS.
Issue Details:
Version: 1.1.2
Current Behavior:
Android (Non-JSON Format):
{apiVersion: 2, apiVersionMinor: 0, paymentMethodData: {description: US Credit: Visa •••• 4242, info: {billingAddress: {address1: 1600 Amphitheatre Parkway, address2: , address3: , administrativeArea: CA, countryCode: US, locality: Mountain View, name: Card Holder Name, phoneNumber:<PHONE_NUMBER>, postalCode: 94043, sortingCode: }, cardDetails: 4242, cardNetwork: VISA}, tokenizationData: {token: {
"id": "------------",
"object": "token",
"card": {
"id": "------------",
"object": "card",
"address_city": "Mountain View",
"address_country": "US",
"address_line1": "1600 Amphitheatre Parkway",
"address_line1_check": "unchecked",
"address_line2": null,
"address_state": "CA",
"address_zip": "94043",
"address_zip_check": "unchecked",
"brand": "Visa",
"country": "US",
"cvc_check": null,
"dynamic_last4": "4242",
"exp_month": 12,
"exp_year": 2025,
"funding": "credit",
"last4": "4242",
"metadata": {},
"name": null,
"tokenization_method": "android_pay",
"wallet": null
},
"client_ip": "<IP_ADDRESS>",
"created":<PHONE_NUMBER>,
"livemode": false,
"type": "card",
"used": false
}, type: PAYMENT_GATEWAY}, type: CARD}}
IOS (Non-JSON Format):
{paymentMethod: {displayName: Simulated Instrument, type: 0, network: AmEx}, transactionIdentifier: Simulated Identifier, token: , billingContact: {name: {nameSuffix: , nickname: , namePrefix: , middleName: , givenName: ibrahim, phoneticRepresentation: {namePrefix: null, givenName: , nickname: null, phoneticRepresentation: null, middleName: , familyName: , nameSuffix: null}, familyName: Mohamed}, postalAddress: {subLocality: , street: Sxsxs , subAdministrativeArea: , isoCountryCode: US, city: Asdddd, state: AL, postalCode: 12345, country: United States}}}
which are not a json format

Hi @ibrahimmohamed2411, these responses are generated on the native ends on Android and iOS respectively, and hence not intended to adhere to any typing contract. These objects are relayed to the Flutter layer as they are returned from the Google Pay and Apple Pay libraries respectively.
Would you see a benefit in wrapping the responses in superobjects containing common properties and the raw data too?
Can you share your concrete use cases where this may be valuable?

Closing this issue, feel free to reopen if you can provide additional input.


Is it possible to set a new input+value or add custom HTML to the form?

Hey guys, thanks for the amazing library, some context for what I'm doing:
A CRUD with FastAPI, basically.
I managed to transform my SQLALchemy schemas to a form with wtforms-sqlalchemy, but the form wasn't fitting very well as I was using bootstrap and the form was very crude, so I'm using this lib to beautify the generated form.
I generate the form with:
from wtforms_sqlalchemy.orm import model_form
MyForm = model_form(MyClass)
form = MyForm()

then on my HTML I only do this, since it contains all <form> in renderer:
{{
  render_context
    .form(action=request.url_for('update_myclass'))
    .render(form)
}}

So far it's working, but I'm facing some struggles:

It would be amazing if I can create the submit button with the RenderContext, as wtforms sqlalchemy does not generate a submit button I need to create a parent class that has submitted option and inherit Form this class then reorder the fields then........ it's a workaround.

I can't manage to post my class ID/PK to be updated as well, if I were doing with pure HTML I would set a new hidden field with the ID, e.g: <input type="hidden" name="id" value="6">

I was thinking about something like:
{{
  render_context
    .form(action=request.url_for('update_myclass'))
    .post_params(name="id", value"123"),
    .add_submit_button(name="save, send, update, some text for button"),
    .render(form)
}}

If this isn't the way or have another method of doing those two things I would love to hear, so far I was thinking of getting the generated HTML and injecting those fields I need, but this doesn't feel right tbh, I think it would be less ugly if I could inject something in the middle of the generated HTML of the renderer directly.

update: I totally forgot I could pass the ID via url parameter, so I managed to do that with:
{{
  render_context
    .form(action=request.url_for('update_endpoint', id=myclass.id) )
    .render(form)
}}

for adding button, I could remove <form> tag then rebuild the form:
# in my view
context = RendererContext()
html = str(context.form().render(form))
html = html.replace('<form method="POST">', '')
html = html.replace('</form>', '')
html = Markup(html)
# pass html to context and use in jinja

return templates.TemplateResponse("mytemplate.html", {"html_form": html})

in html:
<form method="POST" action="{{ request.url_for('update', id=myclass.id) }}">
  {{ html_form }}
  <input type="hidden" name="myhiddenfield" value="somevalue">
  <div class="mb-3">
    <input class="btn btn-primary" id="submit" name="submit" type="submit" value="Submit">
  </div>
</form>

Hi @henriquelino, thanks for reporting the issue. I realize that I need similar feature as you described, so I am working on #4 to address this feature. The PR will be merged shortly and a new release will be made.
For your second approach, to stop form tag from generating, actually you don't need to replace the form tags. You only need to use the form_enabled option like this
renderer_context.form(form_enabled=False).render(form)

Sorry it's not mentioned in the document, so you might not know that.


[8.x] Change loadRoutesFrom to accept group $attributes

When we define routes it is often needed to include a couple of middleware groups (especially web or api) on the loaded routes in the files.
This PR makes it possible to refactor out the Route::group call in the manually loaded route files and make them flatter while maintaining the proper route-caching.
Plus, it brings the $route object back and makes it consistent with default route files.

Let me note that calling Route::group($attr, $path); directly in the boot method (instead of loadRoutesFrom) requires knowledge of how the route caching is done in that particular version of laravel or they will not get cached.

Performance hit:
On production, it should have zero-hit on performance, since the routes are cached.
Before
// boot method
$this->loadRoutesFrom($somePath);

// my_routes.php
Route::group(['middleware' => 'web'], function () {
    Route::get(...);
    Route::post(...);
    ...
});

After:
// boot method
$this->loadRoutesFrom($somePath, ['middleware' => 'web']);

// my_routes.php
// Route::group(['middleware' => 'web'], function () {
Route::get(...);
Route::post(...);
...
//});

Backward-compatibility:
This is mostly backward compatible except for method signature issues, which arise when overriding methods in subclasses, which is very rare.

The imported Route facade is already in the illuminate\support package.

this breaks mll-lab/laravel-graphql-playground

Do they have an override of the changed method?
@rs-sliske

i havent actually looked at their code yet but i think they are overriding the method, i tried to run composer update in a project im working on and got an error of "[2020-10-20 16:49:45] local.ERROR: Declaration of MLL\GraphQLPlayground\GraphQLPlaygroundServiceProvider::loadRoutesFrom($path): void should be compatible with Illuminate\Support\ServiceProvider::loadRoutesFrom($path, array $attributes = Array) {"exception":"[object] (ErrorException(code: 0): Declaration of MLL\GraphQLPlayground\GraphQLPlaygroundServiceProvider::loadRoutesFrom($path): void should be compatible with Illuminate\Support\ServiceProvider::loadRoutesFrom($path, array $attributes = Array) at /app/vendor/mll-lab/laravel-graphql-playground/src/GraphQLPlaygroundServiceProvider.php:49)"

@rs-sliske is right, I already submitted a PR for it here https://github.com/mll-lab/laravel-graphql-playground/pull/46
But this changes breaks more than someone might actually thought of. For example nuwave/lighthouse also suffers from this change. Making a PR for it right now.

Yeah,  this error is due to override, but the fix for it is also very quick and easy I think.

Of course its quick and easy, but it also sets back a lot of developers in their time after upgrading to this version. I am not aware that I had any problems after upgrading Laravel in any minor revision. Personally I think this change was a bit to much on the breaking-change-y side of things.

I think this change relates to package maintainers and not typical web app developers, and because something like travis normally emails them and warns package maintainers of failing builds, it does not take a lot of time for maintainers to do the quick fix and the web app developers must not see any breakage after they upgrade. (since they also upgrade the installed packages.)

I think the reason that package maintainers have overridden this method can be insightful.

@imanghafoori1 from the other GitHub repostiories referencing this PR, one use case is to check if the underlying app is a Laravel or a Lumen app.
References:
https://github.com/mll-lab/laravel-graphql-playground/blob/b14caee7de995deeb60b2bd6f602fdd1020eccb7/src/GraphQLPlaygroundServiceProvider.php#L49-L58
https://github.com/nuwave/lighthouse/blob/e0dffd81b2544aa4a9a37582ad3247480f791580/src/LighthouseServiceProvider.php#L73-L82

We've reverted this PR.

@driesvints
Will this be included in laravel 9.x?

I don't recommend that as this seems to break too much (including Lumen).


bump versions (Scala, sbt, test frameworks)

sbt 1.5.5 -> 1.6.1
Scala 2.13.6 -> 2.13.8
JUnit 4.11 -> 4.13.2
ScalaTest 3.2.0 -> 3.2.10
ScalaCheck 1.14.0 -> 1.15.3

@eed3si9n is it okay for me to merge something like this with my admin powers, or do you prefer that I seek out a second reviewer?

@SethTisue Feel free to hit merge. I'll remove the 2 reviewer restriction.


Remove install scripts from repo

Given that all of our documentation has people pip install, it is confusing to have the install scripts in the repo. As evidenced in this issue: #80
install_Mac_OSX
install_Windows.vbs
Should we go ahead and delete these from the repo @ltauxe @moonshoes87?

I agree -- they are just confusing.  I've taken them out.


Colorize query results with https://github.com/gravity-ui/unipika

Add formatting for different data types and (probably) show column type in popup as depicted.

Performance issues should be taken into account when changing table rows appearance. Be careful with variable rows height when displaying data-types with not constant height (e.g. json)
https://github.com/ydb-platform/ydb-embedded-ui/issues/616#issuecomment-2500843716


Support for adafruit_feather_rp2040_rfm9x

Adafruit recently developed and released a new RP2040 board with a LoRa module installed.  It is different than the standard RP204 with an externally attached LoRa module.  Is there an easy way to modify the definition of  "-DPICO_BOARD=adafruit_feather_rp2040" to the newer board?
When I use the otaa_temperature_led example it fails to initialize the the lorawan.
I get this error;
Pico LoRaWAN - OTAA - Temperature + LED
Initilizating LoRaWAN ... failed!!!
I am pretty sure it is because of the design differences in the two boards.

I was able to get the new Adafruit RP2040_RFM95 board to work by modifying just the GPIO pins used for the LoRa module.  I thought there would be more to it!
const struct lorawan_sx1276_settings sx1276_settings = {
.spi = {
//        .inst = PICO_DEFAULT_SPI_INSTANCE,
.mosi = 15,
.miso = 8,
.sck  = 14,
.nss  = 16
},
.reset = 17,
.dio0  = 21,
.dio1  = 22
};

@mdede439 great work!
Have you asked Adafruit if they plan to add a .h here for the board in the pico-sdk? https://github.com/raspberrypi/pico-sdk/tree/develop/src/boards/include/boards


ng lint --fix rewrite code and rename variable' names while lint the html template

🐞 Bug report
Command (mark with an x)

- [ ] new
- [ ] build
- [ ] serve
- [ ] test
- [ ] e2e
- [ ] generate
- [ ] add
- [ ] update
- [x] lint
- [ ] xi18n
- [ ] run
- [ ] config
- [ ] help
- [ ] version
- [ ] doc

Is this a regression?

 Yes, the previous version in which this bug was not present was: ....
Description
 A clear and concise description of the problem...
ng lint --fix affected to code and change it with buggy behavior - rename variables and set unused curly braces which affected the template.

current packages:
"dependencies": {
    "@agm/core": "^1.0.0-beta.2",
    "@angular/animations": "^5.0.0",
    "@angular/common": "^5.0.0",
    "@angular/compiler": "^5.0.0",
    "@angular/core": "^5.0.0",
    "@angular/forms": "^5.0.0",
    "@angular/http": "^5.0.0",
    "@angular/platform-browser": "^5.0.0",
    "@angular/platform-browser-dynamic": "^5.0.0",
    "@angular/router": "^5.0.0",
    "@ngrx/effects": "^4.1.1",
    "@ngrx/entity": "^4.1.1",
    "@ngrx/router-store": "^4.1.1",
    "@ngrx/store": "^4.1.1",
    "@ngrx/store-devtools": "^4.1.1",
    "@types/lodash": "^4.14.108",
    "angular-google-place": "0.0.3",
    "angular2-notifications": "^0.9.7",
    "angular4-social-login": "^1.1.1",
    "core-js": "^2.4.1",
    "lodash": "^4.17.11",
    "ng2-google-place-autocomplete": "^1.4.2",
    "ngrx-store-freeze": "^0.2.0",
    "ngx-cookie-service": "^1.0.9",
    "ngx-dropzone-wrapper": "^5.3.4",
    "ngx-google-places-autocomplete": "^2.0.3",
    "ngx-perfect-scrollbar": "^5.3.3",
    "ngx-webstorage": "^2.0.1",
    "prettier": "^1.17.1",
    "primeng": "^6.1.5",
    "raven-js": "^3.27.0",
    "rxjs": "^5.5.2",
    "tslib": "^1.8.1",
    "uuid-js": "^0.7.5",
    "zone.js": "^0.8.14"
  },
  "devDependencies": {
    "@angular/cli": "^1.7.3",
    "@angular/compiler-cli": "^5.2.11",
    "@angular/language-service": "^5.0.0",
    "@types/googlemaps": "^3.30.7",
    "@types/jasmine": "~2.5.53",
    "@types/jasminewd2": "~2.0.2",
    "@types/node": "~6.0.60",
    "codelyzer": "^4.0.1",
    "jasmine-core": "~2.6.2",
    "jasmine-spec-reporter": "~4.1.0",
    "karma": "^4.1.0",
    "karma-chrome-launcher": "~2.1.1",
    "karma-cli": "~1.0.1",
    "karma-coverage-istanbul-reporter": "^1.2.1",
    "karma-jasmine": "~1.1.0",
    "karma-jasmine-html-reporter": "^0.2.2",
    "node-sass": "^4.12.0",
    "protractor": "~5.4.2",
    "puppeteer": "^1.17.0",
    "ts-node": "~3.2.0",
    "tslint": "~5.7.0",
    "tslint-config-prettier": "^1.18.0",
    "typescript": "~2.4.2"
  }

🔬 Minimal Reproduction

🔥 Exception or Error

🌍 Your Environment

Angular CLI: 1.7.3
Node: 10.15.3
OS: win32 x64
Angular: 5.1.1
... animations, common, compiler, core, forms, http
... language-service, platform-browser, platform-browser-dynamic
... router

@angular/cli: 1.7.3
@angular/compiler-cli: 5.2.11
@angular-devkit/build-optimizer: 0.3.2
@angular-devkit/core: 0.3.2
@angular-devkit/schematics: 0.3.2
@ngtools/json-schema: 1.2.0
@ngtools/webpack: 1.10.2
@schematics/angular: 0.3.2
@schematics/package-update: 0.3.2
typescript: 2.4.2
webpack: 3.11.0

Anything else relevant?

Hi, thanks for opening this issue however Angular CLI 1 is no longer supported.
Kindly update to the latest version of the CLI and if the problem persists please open a new issue.
Thanks


Improvement: Allow focus selector and switch windows to cross between screen while respecting their layout, orientation and position.

Hi,
I did not find an obvious way to switch between desktops however the ability to continue with the selector and switch the window would be greatly appreciated. I also might have an uncommon set-up (see below) since I have a dock to connect the laptop to 3 external displays, one of which is vertical.

Thank you for your amazing work,
Andrei

I use the basic KWin "Switch to Window to the Left/Right etc." instead of Krohnkite focus left/right/up/down as a workaround. Unfortunately moving windows between screens is still "next/previous" rather than directional.

@Cal-Nine
Yes , I did find that eventually. Thank you for suggesting that. I believe my request is more ergonomic as one would not need one would not need to swtich to another key row just to move the window or focus on another screen . KDE itself has an option like this , but it only works with focus. Moving the windows would be a big plus


IGNITE-20181: KV/Binary view public API should only throw public exceptions for the end user.

Wraps marshaller exceptions in lang.MarshallerException and fixes MarshallerException exception error code/ message propagation by adding the required constructor.
https://issues.apache.org/jira/browse/IGNITE-20181

Thank you for submitting the pull request.
To streamline the review process of the patch and ensure better code quality
we ask both an author and a reviewer to verify the following:
The Review Checklist

[ ] Formal criteria: TC status, codestyle, mandatory documentation. Also make sure to complete the following:
- There is a single JIRA ticket related to the pull request.
- The web-link to the pull request is attached to the JIRA ticket.
- The JIRA ticket has the Patch Available state.
- The description of the JIRA ticket explains WHAT was made, WHY and HOW.
- The pull request title is treated as the final commit message. The following pattern must be used: IGNITE-XXXX Change summary where XXXX - number of JIRA issue.
[ ] Design: new code conforms with the design principles of the components it is added to.
[ ] Patch quality: patch cannot be split into smaller pieces, its size must be reasonable.
[ ] Code quality: code is clean and readable, necessary developer documentation is added if needed.
[ ] Tests code quality: test set covers positive/negative scenarios, happy/edge cases. Tests are effective in terms of execution time and resources.

Notes

Apache Ignite Coding Guidelines

Removed exception handling wrapper of InternalTable and wrapped read/modify calls of InternalTable  with covertToPublicFuture .


Where changelog

Hello,
Where is the changelog for this project? I want to see what are the breaking changes from v7 -> v8.
Matt

https://github.com/JamesNK/Newtonsoft.Json/releases

Thank you. May I suggest you update the documentation to point to the above page, as I could not find it linked anywhere.
Matt


Add guidance to results bulk upload errors

Frontend and BACKEND PULL REQUEST
Related Issue

#5418

Changes Proposed

Testing

How should reviewers verify this PR? dev6

It looks like guidance / messaging for device validation errors don't get set correctly


Is there Any Turturios with img2img mode?

Specifically, what is the difference between this mode and the image-to-image mode in WebUI?
At first, I thought it was possible to frame an area on the screen and achieve real-time image generation by modifying this area.
However, it seems that this img2img mode only generates images from the selected picture, and none of the shortcuts can be used.

Yeah, img2img mode was added as an afterthought as a separate mode from the default scribble mode, to use any digital painting as source instead of the SdPaint interface.  It is less polished than the txt2img use, and is not as developed.
Many recent iterations on LCM real time drawing use a webcam as source, and/or a screen capture device to get the source picture. The main difference beeing that SdPaint img2img only launches a new generation when the image is saved/updated, where the webcam/capture softwares generate continually in the background.
If you want real time rendering via screen capture, check https://github.com/radames/Real-Time-Latent-Consistency-Model with OBS studio for example.

thank you, I almost understand.


Test if packages updates from several repositories are correct

It should be tested if package updates from several repositories work as expected. Especially, the attention should be paid to the dates in the README file when different packages are updated on different dates. Do the dates of packages updated earlier get overwritten?
I ran some preliminary tests and they showed that when the code is run locally, the dates are correct, but when they run on GitHub Actions, the dates are set to the same date when the code was run the last time (It might be that the date attribute is lost and overwritten during git clone).
Originally this issue was raised in https://github.com/r-hyperspec/hySpc.pkgs/issues/3#issuecomment-674394270 as:

I was experimenting with drat-related code that modifies README. I wrote analogous code in R, used several packages that were updated on several different days. Unfortunately, in the README all the dates were the same: it was the date of the day when the code was run. Does this aspect was tested in the awk related output and was it confirmed that this issue is not present?

This is what I was talking about: the packages are built on different days (see print-screen below), but in README the date is the same (print-screen above).

I'll look into this after a few other tasks are complete.  One thing we could do is not display the date at all, but I would rather have the correct date displayed.

We decided to not display the dates!


VRF field not populated

Sometimes when entering the AngularJS-based add prefix page to add prefixes from a pool or other prefix, the VRF field is not populated. Annoying with intermittent faults, I have no screenshot/JavaScript error to display currently, but adding this to keep track of the issue.

Let's try upgrading to the latest version of AngularJS and see if that solves it...

How often does this happen when you reproduce it? I've tried a few times now and haven't bumped into it thus far.
Will the VRF display correctly in the VRF selection box and then be added to the wrong VRF or will the VRF selection box also show the wrong thing?

Ok, I can reproduce it too. Just clicked the "add prefix from prefix" a bunch of times to open in a new tab and a few of the windows (something like one in ten) doesn't have the VRF selector set to the correct VRF.


writer: dump date without time

A yaml property date: 2020-07-22 should survive the round trip but I get date: 2020-07-11T00:00:00.000Z.

A yaml property date: 2020-07-22 should survive the round trip

load(dump(xxx)) - any data should survive this round-trip
dump(load(xxx)) - but this round-trip is not guaranteed

the reason is: both date: 2020-07-22 and date: 2020-07-22T00:00:00.000Z are represented as the same date object - new Date(1595376000000) - in javascript, and it has no information left about original yaml formatting
and given the choice of how to dump a particular date, I think it's better to go with more explicit representation

While it's really annoying for my yaml use, I see your point.
A date-String ending in T00:00:00.000Z is arguably redundant, too though and could by the same logic be pruned.

Can you fix it for your own app with a hack similar to this?: https://github.com/nodeca/js-yaml/issues/570#issuecomment-662824086
I wonder if there should just be a public api to customize dumper output.

I think if this is not of broader interest, the issue can be closed. If there was broader interest, I might make a PR to remove "trailing zeros" in Date dumps. Doesn't feel terribly complicated and would be in line with trailing zeros vanishing for floats, right? ;)

Doesn't feel terribly complicated and would be in line with trailing zeros vanishing for floats, right?

Floats are easy. If you write number 42 while being in europe, you don't usually expect some american computer to parse it as 42.3 (and switch to 42.4 during summer). 😕
T00:00:00.000 may be redundant, but Z is not. Need to carefully check yaml spec to see what happens if you miss it...

omg, locales are fun :D
You win


update jenkins to fail fast

Description
update jenkins to fail fast
Checklist
Essentials

[x] Changes are complete (i.e. I finished coding on this PR)
[x] All changes have test coverage
[x] Code is well-documented

Job PR-323/1 is complete.
Docs are uploaded to http://gluon-nlp-staging.s3-accelerate.dualstack.amazonaws.com/PR-323/1/index.html


AccessModifierDeclarations inline with rescue

I'm getting odd behavior in rescue statements when AccessModifierDeclarations is set to inline.
.rubocop.yml:
Style/AccessModifierDeclarations:
  EnforcedStyle: inline

foo.rb:
class Foo
  private def bar
    raise
  rescue StandardError
    1
  end
end

When running bundle exec rubocop -a, I get the following output:
app/services/foo.rb:6:3: C: [Corrected] Layout/RescueEnsureAlignment: rescue at 6, 2 is not aligned with def bar at 4, 10.
  rescue StandardError
  ^^^^^^

Even though it says "Corrected", no change is made to the file. It will repeat this error over and over again and there does not seem to be a way to fix it.

Expected behavior
The following should be valid:
class Foo
  private def bar
    raise
  rescue StandardError
    1
  end
end

Actual behavior
rubocop says the file is corrected, but still registering as an error in subsequent runs.
Steps to reproduce the problem

Clone this repo https://github.com/stevenspiel/access-modifier-declarations-error.git
$ bundle
$ bundle exec rubocop -a

RuboCop version
$ [bundle exec] rubocop -V
0.59.1 (using Parser <IP_ADDRESS>, running on ruby 2.4.0 x86_64-darwin17)

Thanks for the report! This seems to be another manifestation of #6258. I'll close this issue so we can track the existing one. Please keep an eye there for updates. :bowing-man:

This issue is not equals to #6258. Inline access modifiers are naturally part of method definition. It was just implemented in parser with special wrapping nodes and guys forget to implement it in rubocop.


Dispatch jobs with milliseconds delay

Laravel Version: 8.61.0
PHP Version: 7.4.16
Database Driver & Version: MySQL 5.7

Description:
Can't dispatch jobs into queue (database driver) with a delay of milliseconds. Dispatching with minutes or seconds delay works just fine as expected but milliseconds delay doesn't work. I came to conclusion that it is a limitation of unix timestamp. available_at column in the queue table is a integer column which is filled with unix timestamp values. And unix timestamp is:

It is the number of seconds that have elapsed since the Unix epoch, excluding leap seconds. The Unix epoch is 00:00:00 UTC on 1 January 1970

So it cannot differentiate in milliseconds. Is there a solution to this ?
Steps To Reproduce:

Migration

Schema::connection('queues')->create('my_jobs', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->string('queue')->index();
            $table->longText('payload');
            $table->unsignedTinyInteger('attempts');
            $table->unsignedInteger('reserved_at')->nullable();
            $table->unsignedInteger('available_at');
            $table->unsignedInteger('created_at');
        });

Dispatched job class is not relevant
Dispatch code:

MyJob::dispatch($jobSpecs)->delay(now()->addMilliseconds(1000)); //available_at column value is incremented by 1 compared to now()

MyJob::dispatch($jobSpecs)->delay(now()->addMilliseconds(100)); //no difference in available_at column in the DB

Related SO post: post

As intended.
You can still create your own driver (or just extend the included one) to delay jobs by milliseconds, so it doesn't save an epoch but a DateTime with millisecond precision, but IMO I don't think this makes a huge difference. You could even delay it for 1 second, and I do not know any scenario where you would desire to push a job to be executed by millisecond difference.

That depends on what database driver you are using,for example mariadb's timestamps are integer based values,if you would like to store in miliseconds try to store then in a float value, so you can integrate milliseconds in your timestamp value.
something like:
$table->unsignedFloat('available_at')->unique();

@hicham-saddek will try your suggestion on Monday and comment down below. As far as i remember, i was using innoDB. Just running a migration alone as you suggested will be enough, or am i to change db engine too ? Thanks.

That depends on what database driver you are using,for example mariadb's timestamps are integer based values,if you would like to store in miliseconds try to store then in a float value, so you can integrate milliseconds in your timestamp value.
something like:
$table->unsignedFloat('available_at')->unique();

That won't work because the job get serialized using UNIX epoch anyway, so milliseconds are not considered in the delay information once pushed to the queue.
I'm sure that the only (and faster) way to add milliseconds information is to just extend the DatabaseQueue class, override the delay methods with millisecond data, and that should be it.

@skywarth  well after @DarkGhostHunter comment i guess he is right, overriding the DatabaseQueue class should bw the easy way around this problem, my solution wouldn't work in this case, but it will always be good to try to refactore the serialisation method for the DatabaseQueuedelay methods in the laravel\framework in a future PR request, in order to handle these type of usecases in the future,that could be useful, but tricky...

I see, so far i changed my logic to workaround the problem. Instead of pushing 100 jobs at the same time with different available_at values, i push the jobs to the queue with 100ms delay. Such as:
foreach ($jobsToBeDispatched as $job){
            usleep( 100 * 1000 );//100 ms
            MyJob::dispatch($job);
        }

Is it wonky ? Definitely. Is it hacky ? For sure. Is it anti-pattern ? I suppose. But for now it'll suffice. Hope someone tackles this problem in the future, by overriding DatabaseQueue. Thanks for the support everyone.


Can't add anything to code editor

I can't add code in the editor. I can delete existing text, but I can't add anything new, neither values I've just deleted nor fresh values. I CAN edit numbers by doing the cool alt+drag thing, and I can enter newlines, but can't even add new comments. This happens to me 100% of the time, I've never been able to enter anything. Happens with the tutorial as well as a fresh, empty file.
I'm on an x86_64 MacBook Pro with macos Monterey 12.7. Not seeing any errors in the console.
Steps to reproduce:

open app
try to type anything into code editor - I cannot!

Thansk @davidstelter, How odd.
Are you using the desktop-app? is it any different from the web-app version? https://app.kittycad.io/
(we're not officially supporting the web-app but can help in debugging sometimes)

@franknoirot, thinking out loud here, is there a possibility that this could be file permissions not letting us write to the file-system, therefore code-mirror never updates?

Are you using the desktop-app? is it any different from the web-app version? https://app.kittycad.io/

I'm using the desktop app, yes. Just tried the web app, that works fine and lets me insert code in the editor.

@franknoirot, thinking out loud here, is there a possibility that this could be file permissions not letting us write to the file-system, therefore code-mirror never updates?

That was a reasonable guess, but I've exported an STL model successfully to the local filesystem, and I've just tried manually granting full disk access to kittycad with no change.

@davidstelter The good news is I've been able to replicate it on an x86 mac I have access to but haven't got any further so far.
But definitely a good first step. I was worried for a moment I was going to have trouble replicating it.

That is so strange. I don't have access to an x86 mac unfortunately, but the fact that that is different makes me think we should check the "universal" mac app image against the .targz one.
@davidstelter do you know which one you used? It was probably the universal DMG if you downloaded it from the website download page, but we have other downloads on our GitHub release page.

@davidstelter there's definitely no errors in the console?
I'm seeing Unhandled Promise Rejection: CompileError: WebAssembly.Module doesn't parse at byte xxx when the app boots up. I think there might be a problem with our wasm blob and x86, but want to check if this is the same bug or a different oneL

That is so strange. I don't have access to an x86 mac unfortunately, but the fact that that is different makes me think we should check the "universal" mac app image against the .targz one.
@davidstelter do you know which one you used? It was probably the universal DMG if you downloaded it from the website download page, but we have other downloads on our GitHub release page.

I started just before the app was released on the site, believe I got it from the GitHub releases section. I just downloaded the universal dmg from https://github.com/KittyCAD/modeling-app/releases/download/v0.10.0/KittyCAD.Modeling_0.10.0_universal.dmg and it's exhibiting the bug for me consistently.

Since it’s dealing with webrtc maybe @paultag has ideas?

What's interesting is the stream sounds like it's up and running (and the webapp working is a good sign since it's the same browser); and the WebSocket seems like it's up and healthy - but the weird thing is that rtc_frames_dropped error is coming from our backend, being displayed by the front-end (an {"type": "error"} sent over the websocket from the backend), and the only way for that to trigger would be when the metrics report for stream reliability was missing the rtc_frames_dropped json field.
After looking at it for a second, I suspect we must be getting back an undefined, which would cause:
> JSON.stringify({rtc_frames_dropped: undefined})
< '{}'

I'll send a PR up to add some ||0 on those calls.

I've just checked and this problem with the editor isn't manifesting on my M1 mac mini, works just fine there!

Since the issue doesn't have a clearly-associated error message, are there any steps I can take to help collect more info on this from my end? I'm reasonably familiar with web app debug tools.
Or @paultag do you think that error with rtc_frames_dropped could be related?

@davidstelter I don't think it's related but here's some info that would help a TON if you're able to share! If you feel like any of this is leaking too much information about your setup, we're able to handle the info out of band (via discord, email, etc).
The below info can be skipped if the app, when it's broken, shows the grid behind the code (it would be super helpful to know if you see the grid or if it always says "Loading Stream")
If it says "Loading Stream", the following would be huge:

Any information you can find about the WebRTC state
1.1: If you can get the remote/local SDP that would be super helpful.
1.2: What is the ICE state?
Any information regarding the open WebSocket to the backend; does it look like it's alive in the inspector?
Any of the above when it's working in Safari directly on app.kittycad.io

If it loads the grid, we can go through some different steps to collect more info about the internal state of the app. Thank you so much for offering, I know collecting all this is a big hassle.

Here is a PR which fixes this issue: https://github.com/KittyCAD/modeling-app/pull/2350.

let us know if you still see this in the latest release, thank you @nilpunning


Anyone tried to do quantization aware training for the mobilenet0.25 model?

It looks like no one tried ))
If you will try, share the results, please)


PRD: [Cody Ignore] Enterprise users cannot use ignored repos as context for Explain Command

Description:
When an enterprise admin has configured Cody to allow/ignore repos, Cody Explain command must not be available to the user
As a user on an enterprise instance that has Cody allow/ignore repos configured...
P0: I cannot run the Cody Explain command on any excluded code
P1: I am able to understand that I cannot use the command because the code has been excluded by my administrator
P2: I see guidance in the UX for how to request that my admin include an excluded repo
Objectives:
Cody does not send any code from excluded repos to the LLM when a user is using Cody's Explain command feature.
Acceptance Criteria:

When the user selects content in an excluded file and attempts to perform a Explain command operation using the context menu, they should not be able to complete the operation

When the user selects content in an excluded file and attempts to perform a Explain command operation using the sidebar menu, they should not be able to complete the operation

When the user selects content in an excluded file and attempts to perform a Explain command operation using a keyboard, they should not be able to complete the operation
When the user selects content in an excluded file and attempts to perform a Explain command operation using the command palette, they should not be able to complete the operation

An appropriate notification is provided saying that these operations cannot be completed because the repo is excluded

Design Tasks:
### Design Tasks
- [ ] Add a draft title or issue reference here

Engineering Tasks:
### Engineering Tasks
- [ ] https://github.com/sourcegraph/cody/issues/3641
- [ ] https://github.com/sourcegraph/jetbrains/issues/1252
- [ ] https://github.com/sourcegraph/jetbrains/issues/1253
- [ ] Update TESTING.md#explain-code to cover Cody Ignore
- [ ] https://github.com/sourcegraph/docs/issues/222

Related Docs:
Cody Ignore and Cody Allow GA PRD
RFC 910: Cody Ignore GA Implementation
Related VSCode ticket

All complete as part of 6.0.0


[BUG] fix predefined classes bug

Ensure that ubuntu and windows do not clash

actually now that i thought about it, why not just change it to ./data/predefined_classes.txt
then for the for windows instead of creating a ./predefined_classes.txt, they can create a ./data/predefined_classes.txt


addObserver with Closure -  Type of Expression is ambiguous without more context

I'm working on a Proof-of-Concept using Siesta, and am fairly new to Swift coming from Objective-C so please forgive if this is a basic question.
I'm following the model Transform example in the README, trying to use a the model object with typedContent()  in my closure, but i keep seeing the "ambiguous without more context error"
here is the closure in viewDidLoad()
        API.resource("/profile/").addObserver(self) {
            [weak self] in
            self?.refreshText($0.typedContent()) //"Type of expression is ambiguous without more context"
        }

and refreshText is simple
       func refreshText(user: MiniUser){
         self.txtView.text = user.fullName
      }

this seems like it should work in a straightforward way, any ideas on what might be wrong with this?  it seems to work if i make the ViewController a ResourceObserver and use the delegate call instead, but the closure has been problematic. edited: this does not work either, it gives a similar "ambiguous" error

a bit more detail, the delegate version works with the following:
func resourceChanged(resource: Resource, event: ResourceEvent) {
    if let content = resource.typedContent() as MiniUser? {
        refreshText(content)
    }
}

but i'm having some trouble still with the closure version.  My understanding from the example is that it should infer the type of typedContext(), so there shouldn't be any ambiguity.

Ah, two things: first, there’s a mistake in the README. That’s what I get for editing in place without testing! It should read like this:
    API.resource("/profile/").addObserver(self) {
        [weak self] resource, _ in
        self?.refreshText(resource.typedContent())
    }

I think the problem here is that Swift doesn’t know whether $0 means just the first arg, resource, or the whole (resource,event) tuple. Which is dumb, and I wish they’d fix it. Hmm. Something for the swift-evolution list…. Anyway, code above should fix it, and I'll fix the README when I get a chance.
Second thing is that refreshText needs to accept an optional arg, because there’s no guarantee that you actually got a MiniUser:
  func refreshText(user: MiniUser?){
     self.txtView.text = user?.fullName
  }

Alternatively, you could test this in the closure (warning: more untested code here!):
    API.resource("/profile/").addObserver(self) {
        [weak self] resource, _ in
        if let user: MiniUser = resource.typedContent() {
            self?.refreshText(user)
        }
    }

  func refreshText(user: MiniUser){
     self.txtView.text = user.fullName
  }

…although you’ll probably want to update the UI for a “no user” state as well, so usually it makes more sense for refreshText to accept the optional and either update or clear the UI.
Let me know if that does the trick!

👍 thanks @pcantrell that  worked well! (I went with the alternative version with the unwrap in the closure)
the only thing different from your untested version was that that XCode makes me add owner to addObserver, like this:
        OFLAPI.resource("/v0.1/profile/").addObserver(owner: self) { ... }

Fixed the README. Thanks for the heads up!
One of these days, I’ll get around to writing a script to copy all those code snippets in the docs out of a project that makes sure they actually compile. Hard to keep them up to date as the API stabilizes for 1.0.


Store car index on nft.storage mapping rig id to imagery cid

This will mostly be used to make pinning/unpinning all rigs imagery to other pinning services (like Pinata #602) easier to manage.

I've been trying to upload a test car file to web3.storage and getting an Unexpected EOF error, either from web3.storage or their Go client. Posted a question about it in their discord at https://discord.com/channels/806902334369824788/864892166470893588/1069744722735800370, but no word back yet.

Making some progress here after getting help from some ipld folks. Still some things to figure out, but seeing the light at the end of the tunnel now.

I was able to crate the car file that serves as our index of Rig id to imagery cid, but get an error when truing to store it on nft.storage. Seems that nft.storage doesn't like car files that have cid links to data that doesn't exist within the car file. Will need to chat with them about that limitation. I was told by Rod Vagg that web3.storage would probably accept the car file, but they aren't making deals until the "end of the month" according to Riba. cc @andrewxhill

Asking about this blocker here https://discord.com/channels/806902334369824788/831502708082081822/1075857731216494622


Add scipy stats distributions missing cdf and ppf

Regarding #13291
Contains the following missing functions -
cauchy: cdf, ppf
chi2: cdf
expon: cdf, ppf
gamma: cdf
geom: cdf, ppf
laplace: ppf
pareto: cdf, ppf
uniform: cdf, ppf

I think we'd still consider merging this if you could add tests for the new functionality. Let me know if you're still interested in working on this!


1.18.2, Wireless Charging and Network Connections does not open on the Flux Controller

Is this not reimplemented yet ? or it's a bug on the 1.18.2 version?

They are not available yet. Maybe next version.

Alright, thank you!

Wireless Charging is added back in 7.0.1

If Wireless charging has been added back in, the I am having an issue as I have <IP_ADDRESS> but wireless charging still isn't working. Any change I make causes a pop-up to appear saying 'The request was rejected by the server'. Also, the wireless charging tab says 'Ineffective Wireless Network'. I have a controller, flux plug, and storage, so not sure what is wrong here.

If Wireless charging has been added back in, then I am having an issue as I have <IP_ADDRESS> but wireless charging still isn't working. Any change I make causes a pop-up to appear saying 'The request was rejected by the server'. Also, the wireless charging tab says 'Ineffective Wireless Network'. I have a controller, flux plug, and storage, so not sure what is wrong here.

Also getting this issue, interestingly on a server a friend can use the wireless charging but I can't. Despite me being the owner of the network.

If Wireless charging has been added back in, then I am having an issue as I have <IP_ADDRESS> but wireless charging still isn't working. Any change I make causes a pop-up to appear saying 'The request was rejected by the server'. Also, the wireless charging tab says 'Ineffective Wireless Network'. I have a controller, flux plug, and storage, so not sure what is wrong here.

Only one network can power your items. If you want to switch the effective network, make sure you can access the network, then toggle Enable Wireless and click Apply. What's your access level to the network?

Currently there is literally only one network on the entire server, my network.

Currently there is literally only one network on the entire server, my network.

You have not enabled wireless.

You have not enabled wireless.

You have not enabled wireless.
Me too, I can't enable it because it says the request was rejected by the server.

I can't be super admin too, because it says the same thing.

Same, 'request was rejected by the server'

thats strange, it works fine with me, tested it now

Mine was working, suddenly stop working. I don't have modern ui

Mine was working, suddenly stop working. I don't have modern ui

Player deaths result in loss of wireless settings. It was fixed just now.

Seems to have fixed it! Thanks!

Seems to have fixed it! Thanks!

how exactly did you get it fixed ive tried everything but it hasnt worked for me


Support for MFA

This would be a useful capability to add

possibly interesting/relevant https://github.com/openziti-test-kitchen/zssh/issues/29 i've been working on this in my off cycles. I'm hoping to merge this functionality soon as i can.
Are you looking for TOTP? or OIDC support? or something else?

closed by #37. There are still MFA ergonomics to work out. Removing MFA doesn't work, but you can now enable MFA on an identity from zssh.

docker-versions.txt


Can I launch cupy kernels in C++?

Description
I try to define a kernel by using cupy's cupy.RawKernel (https://docs.cupy.dev/en/stable/reference/generated/cupy.RawKernel.html). And then, can I launch the kernel from my customized C++ code? and passing a cuda stream into the kernel to launch? Thanks!
Additional Information
No response

You cannot launch a kernel defined by cupy.RawKernel, however, an option may be using cupy.RawModule that can be used to load a .cubin or .ptx file. Does it fit?
https://docs.cupy.dev/en/stable/reference/generated/cupy.RawModule.html

So a great answer! Therefore, the key is to use RawModule to generate a .cubin or .ptx file, then I load the generated under the c++ backend to run. Am I right?

Moreover, can cupyx.jit.rawkernel compiled kernels to be saved into a .ptx file?

What I meant was the opposite. You write in C++ (.cu file) and compile it into .cubin or .ptx files, then you can use them from the RawModule. cupyx.jit.rawkernel doesn't have a feature to save .ptx file in a way that is easily usable from external programs.

Thanks for the explanation. I am wondering how to get the compiled binary when using cupy.RawKernel?

I try to use cupy to compile the cuda code, and get its compiled kernel, rather than providing the path of a compiled CUDA binary (*.cubin) or a PTX file. So, I am wondering how to provide the cuda source code and then get the cupy compiled binary file path?

Or, how can I get the kernel under $HOME/.cupy/kernel_cache/ directory? The name of a .cubin file seems have no pattern?

Are there any specific reasons to use CuPy for that purpose? If your C++ application needs to compile CUDA code on the fly, you can just call NVRTC to get cubin/ptx.

In theory, for a given RawKernel (either you use it directly, or get it via RawModule.get_function) you can retrieve the CUFunction pointer via RawKernel.kernel.ptr, but

This is not public API
This is untested

It's unclear to me either why you'd need this, @chaoming0625 could you elaborate?

Thank you @kmaehashi @leofang . Currently, I am using the pointer in RawKernel.kernel.ptr just as @leofang pointed out. However, I also agree the suggestion of @kmaehashi is right.
The motivation for my question is to use cupy as a compiler to compile custom CUDA extensions on JAX. JAX's jit system needs to register an XLA custom call when using customized Cuda kernels. Usually, we need to write Cuda code, pre-compile it, bind it to Python, and register kernels in XLA. To remove such a complex process, we can directly compile the source code (as a Python code) at the Python level, then get the compiled kernel, throw it into the custom call, and all things are compatible with jax's jit system, with the minimal efforts to write the Python string.
Currently, we are working on this functionality.

Moreover, can I get the pointer of the function after compiling through cupyx.jit.rawkernel?

Thanks for sharing your use case @chaoming0625, this is very interesting!
Would you be able to point us how you use this capability to make CuPy and Jax interoperable at the kernel level? I would love to see how it allows you to avoid writing complex boilerplate code. Eventually, I would like to learn how to craft a small interop demo like the one we showed for PyTorch-CuPy:
https://docs.cupy.dev/en/stable/user_guide/interoperability.html#using-custom-kernels-in-pytorch
If you already have a small demo that we can copy/paste to the document that's even better! 😄

Moreover, can I get the pointer of the function after compiling through cupyx.jit.rawkernel?

Right now it's not public API either, but according to the internal implementation (subject to change)
https://github.com/cupy/cupy/blob/41792869d39ddac17a339887872a947fbcadc53e/cupyx/jit/_interface.py#L91
it is possible to get the Function object from jit.rawkernel._cache once instantiated (it's the key of the cache). Then, you can get the CUFunction pointer via Function.ptr as before.
If you show us your workflow as I ask above, it'll help us stabilize the interface and expose these features properly. Thanks!

Friendly nudge @chaoming0625 :)

@leofang So many thanks for the reminder.
Currently, we provide an interface for wrapping a cupy's RawKernel and cupyx.jit.rawkernel as a jittable operator in JAX. The examples can be found in our documentation. Please feel free to try the API we have provided here.
The key for such integration is getting the pointer of cupy compiled kernels. For RawKernel, it is convenient to get its pointer by using [kernel.kernel.ptr].
https://github.com/brainpy/BrainPy/blob/87858c54b4f4e45192ad4d9c6ff359f4c1e7ecf8/brainpy/_src/math/op_register/cupy_based.py#L116
However, for cupyx.jit.rawkernel, we found that it does not have an accessible pointer. So, we hacked into the cupy and wrote a compilation process for cupyx.jit.rawkernel to get its pointer.
https://github.com/brainpy/BrainPy/blob/87858c54b4f4e45192ad4d9c6ff359f4c1e7ecf8/brainpy/_src/math/op_register/cupy_based.py#L154-L189
In the future, we are expecting a publicly available interface to get the compiled kernel of a cupyx.jit.rawkernel.


Touchs

A player enters the team red, and then touched in the core or monument in the chat goes the color of the opposing team.
Gyazo: http://gyazo.com/3dc91525f7e61ae9fa6b18e0d9af97a0 (Chat)

This has already been fixed in #52, please recompile the plugin and reopen this issue if the problem still exists.


Score (prediction) calculated by xgboost does not match what is expected from tree model generated by xgboost

TL;DR
I am seeing that, due to rounding errors, the score calculated by xgboost for a tree ensemble does not match the one expected based on manually looking at the tree model.
Background
We have our own implementation of tree scoring and while comparing the score that our library generates for a given tree model with the score (prediction) that xgboost comes up with for the same tree model we find that due to rounding errors somewhere the tree traversal the score done match
Using some training data we trained a tree ensemble using xgboost and the xgboost outputs the following model
TREE MODEL
 booster[0]:
 0:[feature_7<0.0397409] yes=1,no=2,missing=1
         1:[feature_3<0.0667176] yes=3,no=4,missing=3
                 3:[feature_4<0.312636] yes=7,no=8,missing=7
                         7:leaf=-0.329882
                         8:leaf=-0.273303
                 4:[feature_1<0.350854] yes=9,no=10,missing=9
                         9:leaf=-0.259339
                         10:leaf=-0.181342
         2:[feature_3<0.154725] yes=5,no=6,missing=5
                 5:[feature_5<0.0974576] yes=11,no=12,missing=11
                         11:leaf=-0.219728
                         12:leaf=-0.131518
                 6:[feature_10<0.0839368] yes=13,no=14,missing=13
                         13:leaf=-0.126043
                         14:leaf=-0.0395797
 booster[1]:
 0:[feature_9<0.033038] yes=1,no=2,missing=1
         1:[feature_3<0.0765929] yes=3,no=4,missing=3
                 3:[feature_5<0.0953409] yes=7,no=8,missing=7
                         7:leaf=-0.264299
                         8:leaf=-0.198648
                 4:[feature_7<0.0226379] yes=9,no=10,missing=9
                         9:leaf=-0.203953
                         10:leaf=-0.13269
         2:[feature_2<0.190862] yes=5,no=6,missing=5
                 5:[feature_5<0.130523] yes=11,no=12,missing=11
                         11:leaf=-0.147195
                         12:leaf=-0.0626878
                 6:[feature_2<0.528541] yes=13,no=14,missing=14
                         13:leaf=-0.0245767
                         14:leaf=0.0536115
 booster[2]:
 0:[feature_9<0.0270387] yes=1,no=2,missing=1
         1:[feature_1<0.445829] yes=3,no=4,missing=3
                 3:[feature_6<0.103294] yes=7,no=8,missing=7
                         7:leaf=-0.242124
                         8:leaf=-0.190886
                 4:[feature_2<0.50734] yes=9,no=10,missing=9
                         9:leaf=-0.157586
                         10:leaf=-0.0441379
         2:[feature_2<0.130774] yes=5,no=6,missing=5         ←----------------- Different branching
                 5:[feature_11<0.0535646] yes=11,no=12,missing=11
                         11:leaf=-0.154575
                         12:leaf=-0.0750511
                 6:[feature_12<0.562536] yes=13,no=14,missing=13
                         13:leaf=-0.0398532
                         14:leaf=0.051261

For this test data
TEST DATA
feature_1=1.0
feature_2=0.13077405095100403
feature_3=0.11696787178516388
feature_4=1.0
feature_5=0.17436540126800537
feature_6=1.0
feature_7=0.02141261100769043
feature_9=0.05511551350355148
feature_10=0.08659037202596664

Xgboost score = 0.401647
Score with our own library = 0.4295020650820223
(NOTE: scores of individual trees are added (summation) and score = sigmod(sum of scores from each tree))
For the line marked different branching one can deduce that our library is evaluting the condition to be false, and hence ends up calculating score -0.0398532 as the score of the third tree.
Based on the score generated by xgboost one can deduce the this same condition is evaluated as true by xgboost and xgboost end up calculating score -0.154575 as the score of the third tree.

It's most likely the differences in rounding.
Trees are printed using default std::stringstream precision
https://github.com/dmlc/xgboost/blob/51154f42fe0c09c9597b639d086f69cdaa5c6fa8/src/tree/tree_model.cc#L78
which usually means that the float split values are represented with 6 meaningful digits, as you may see from your example. And default rounding, if I remember correctly, is towards zero.
You might try the following hack in order to see more digits in the split value: add fo.precision(18); after that line and rebuild.

Thanks @khotilov. That helped. Would it be a good idea to set the precision to the highest precision of float in xgboost so as to avoid discrepancies in what xgboost uses as splitvalue/score and what other libraries using the output of xgboost use during scoring. If so, I can create a pull request


Expeditor failing because we are using the wrong environment var names

Description

Related Issue

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Chore (non-breaking change that does not add functionality or fix an issue)

Checklist:

[ ] I have read the CONTRIBUTING document.
[ ] I have run the pre-merge tests locally and they pass.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.
[ ] All commits have been signed-off for the Developer Certificate of Origin.

Actually, I'm confused - the Gemfile.lock isn't checked in. @clintoncwolfe @tas50 Any idea if what the intended behavior is? It seems to me like we need to check in the Gemfile.lock so we know what version of deps we have pinned when we release.

@miah any opinion on https://github.com/chef/chef-core/pull/20#issuecomment-557316219 ?

You generally don't check in generated lockfiles on plain libs... only apps...
Also, the failures on windows SHOULD be fixed via #19... so either rebase against master or just merge.


feat(tooltip): click to show line tooltip

支持可以通过点击展示 tooltip，主要的使用方式如下：

chart.on('plot:click', ({ offsetX, offsetY, target }) => {
  chart.emit('tooltip:show', { offsetX, offsetY: 20, target });
});

[x] code
[x] tests
[x] docs
[x] example

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

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

Totals

Change from base Build<PHONE_NUMBER>:
-0.008%

Covered Lines:
10414

Relevant Lines:
11674

💛  - Coveralls


Remove delete code from firestore sample

Context:
https://github.com/firebase/quickstart-android/issues/405
We have already removed Android/iOS/Web collection deletion snippets from the docs since deletion of a whole collection should almost always be done from a server.

It turns out FrientlyEats iOS never implemented the delete feature, and the security rules also don't allow for it.


get help, [ ERR ] Periodic sending of PM2 status failed: { [Error: Command failed: /usr/bin/zabbix_sender --config /etc/zabbix/zabbix_agentd.conf --input-file -

grep -ri pm2.processes /etc/zabbix/zabbix_agentd.conf
UserParameter=pm2.processes,sudo -u root /usr/local/node/bin/pm2-zabbix --discover
[root@upelk2 ~]# pm2-zabbix --discover
{
"data": [
{
"{#PROCESS_ID}": "www-1",
"{#PROCESS_NAME}": "www"
},
{
"{#PROCESS_ID}": "pm2-http-interface-2",
"{#PROCESS_NAME}": "pm2-http-interface"
}
]
}[root@upelk2 ~]#
[root@upelk2 ~]# pm2-zabbix --monitor --debug

Client running (monitor mode: on)
[ ERR ] Periodic sending of process list error: { [Error: Command failed: /usr/bin/zabbix_sender --config /etc/zabbix/zabbix_agentd.conf --input-file -
]
killed: false,
code: 2,
signal: null,
cmd: '/usr/bin/zabbix_sender --config /etc/zabbix/zabbix_agentd.conf --input-file -' }
[ ERR ] Periodic sending of PM2 status failed: { [Error: Command failed: /usr/bin/zabbix_sender --config /etc/zabbix/zabbix_agentd.conf --input-file -
]
killed: false,
code: 2,
signal: null,
cmd: '/usr/bin/zabbix_sender --config /etc/zabbix/zabbix_agentd.conf --input-file -' }

zabbix server is no pm2-zabbix graph

Hi. Has the discovery process completed successfully? The exit code of zabbix_sender was 2, which implies that the data was sent, but the server has failed or refused to process it. This could happen if the server has not discovered the processes, and it has no item for your host to attribute the data to.
Can you please go to the host's settings page in Zabbix and verify that the items have been created? The relevant items can be seen at Configuration → Hosts → <your host> → Items. If the items are not there, that means discovery has failed or never been attempted and you should check if the Zabbix Agent is running on the host and not generating errors (/var/log/zabbix/zabbix_agentd.log on Debian systems).

thanks for you help, I check Host item:   PM2 Daemon and  PM2 Processes items  is existed by discovery process ,but zabbix-sever don't  received any data。 don't find any  error in /var/log/zabbix/zabbix_agentd.log.
pm2-zabbix --monitor --debug
[ ERR ] Periodic sending of PM2 status failed: { [Error: Command failed: /usr/bin/zabbix_sender --config /etc/zabbix/zabbix_agentd.conf --input-file -
]
killed: false,
code: 2,
signal: null,
cmd: '/usr/bin/zabbix_sender --config /etc/zabbix/zabbix_agentd.conf --input-file -' }
[ ERR ] Periodic sending of process list error: { [Error: Command failed: /usr/bin/zabbix_sender --config /etc/zabbix/zabbix_agentd.conf --input-file -

Discovery looks OK. It seems that the server is not accepting the data items. Let's try sending some fake data manually:
zabbix_sender -c /etc/zabbix/zabbix_agentd.conf -k "pm2.processes[www-0,cpu]" -s `hostname` -o 90 -vv

This simulates sending "CPU: 90%" for your www-0 process to zabbix. Let's see if the server accepts that and we'll work from there.

[root@upelk2 ~]# zabbix_sender -c /etc/zabbix/zabbix_agentd.conf -k "pm2.processes[www-0,cpu]" -s <IP_ADDRESS> -o 90 -vv
zabbix_sender [23136]: DEBUG: answer [{"response":"success","info":"processed: 0; failed: 1; total: 1; seconds spent: 0.000018"}]
info from server: "processed: 0; failed: 1; total: 1; seconds spent: 0.000018"
sent: 1; skipped: 0; total: 1

sorry, the 'hostname' is  client name, the result is successed ,  I recevied host alert of email ，Please refer to the following results。I find host graph is OK of  Manual exec above command.
[root@upelk2 ~]# zabbix_sender -c /etc/zabbix/zabbix_agentd.conf -k "pm2.processes[www-0,cpu]" -s <IP_ADDRESS> -o 90 -vv
zabbix_sender [23877]: DEBUG: answer [{"response":"success","info":"processed: 1; failed: 0; total: 1; seconds spent: 0.000192"}]
info from server: "processed: 1; failed: 0; total: 1; seconds spent: 0.000192"
sent: 1; skipped: 0; total: 1

Maybe the hostname is the issue. In my testing, hosts could not write other hosts' data items. One thing to do would be to check what hostname is actually being sent to the server. As per /etc/zabbix/zabbix_agentd.conf:
### Option: Hostname
#       Unique, case sensitive hostname.
#       Required for active checks and must match hostname as configured on the server.
#       Value is acquired from HostnameItem if undefined.
#
# Mandatory: no
# Default:
# Hostname=

### Option: HostnameItem
#       Item used for generating Hostname if it is undefined. Ignored if Hostname is defined.
#       Does not support UserParameters or aliases.
#
# Mandatory: no
# Default:
HostnameItem=system.hostname

In particular, note "Required for active checks and must match hostname as configured on the server". This means that if the hostname configured on the server in "Hosts" is <IP_ADDRESS>, but your hostname yields upelk2, the names will not match and the active check may fail. This is also probably why passive checks (server → client) are OK - I think the hostname is not used for this kind of checks.
Can you configure the host on the Zabbix Server so that its hostname === hostname returned by the host that you are trying to run pm2-zabbix on? Another solution is to set Hostname= and comment out HostnameItem.

Thanks for your help, Sure enough, the problem is caused by a host name。I modify Zabbix Server web configure hostname  and  client  hostname  config in zabbix_agentd.conf,    pm2-zabbix  --monitor --debug is ok,   thank you very much！
[root@upelk2 public]#   pm2-zabbix --monitor --debug

Client running (monitor mode: on)
[ OK ] Periodic sending of process list succeeded
[ OK ] Periodic sending of PM2 status succeeded
[ OK ] Periodic sending of PM2 status succeeded
[ OK ] Periodic sending of process list succeeded
[ OK ] Periodic sending of PM2 status succeeded

I'll add a troubleshooting checklist with your issue as the first entry, so that others may find it and debug similar issues in the future. Glad to help.

I meet this issue too and finally I change the hostname in ../lib/node_modules/pm2-zabbix/monitor.js to my
zabbix server web's server hostname, then all works

ya, ok.
This solved my issue to with #19
as a note, the script is right in looking for hostname only.
Where it fails:
If I were to change the following files to FQDN it would still fail.
/etc/zabbix/zabbix_agentd.conf
/usr/local/lib/node_modules/pm2-zabbix/monitor.js
Thanks biwoodfengs

Another fix is do this:
where your pm2-zabbix is installed
run npm install fqdn . // this will install fqdn module into pm2-zabbix module directory
from there you will need to modify monitor.js
``
var fqdn = require('fqdn');
fqdn(function(err, res){
if(err){
throw err;
}
console.log(res);
});
var hostname = fqdn();
``
where used to be:
var hostname = os.hostname();
all two variables and hostname need to match.

@ang3lwitch @biwoodfengs You can run pm2-zabbix --hostname <hostname> instead - there is no need to edit the script. In shells such as bash you should also be able to use command substitution like --hostname $(hostname --fqdn).
The root cause behind this apparent weirdness seems to be that the agent discovery script uses the agent config file, which contains some hostname configuration. Then, the key is created on the Zabbix server for the particular hostname that the agent has sent. If pm2-zabbix sends a different hostname, it must fail because the hostnames don't match and the server cannot accept the monitoring values.
One other thing to try would be calling with --hostname - - A value of - should cause the sender to use the values from the agent config, which should always match the agent's configuration (it's the same file!)/

Looks like all is sorted here.


improved module structure

After facing following error message I decided to improve the module code.
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: undef
ined method `ref' for nil:NilClass on node sysadmin-win7.regis24.de
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run

Now it works like a charm. Give a try on a real Windows machine.
I made some changes based on puppetlabs-ntp module structure
The reason is that on a real environment I couldn't install chocolatey with a simple command
include chocolatey
Now it is possible to do so

Hi @rchicoli I'm struggling to understand some of your changes. Why are they necessary? As in using contains versus anchor pattern.

@rchicoli FWIW this works fine already. What version of Puppet are you using with your Windows agents?

puppet v3.5.1

Error: Could not retrieve catalog from remote server: Error 400 on SERVER: undef
ined method `ref' for nil:NilClass on node sysadmin-win7.regis24.de
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping

Curious if you can give me a better bug report here? If you run puppet with --debug --trace --verbose it should include more information about where this error came from.
There is no call in this module to .ref, although there is in core Puppet.

puppet v3.5.1

What is the issue with contains in this version? Does it not work appropriately and you needed to go back to the anchor method?

I'll send you the debug later on. it didn't work with the contains so well. Yes, that is why I removed that from the code. I gotta go now, be back later. I am still running some tests on the code changes. Please leave this request open.

that is the error message I get when I am using your module
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: undef
ined method `ref' for nil:NilClass on node sysadmin-win7.regis24.de
C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/indirector/rest.rb:1
94:in `is_http_200?'
C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/indirector/rest.rb:1
00:in `find'
C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/indirector/indirecti
on.rb:201:in `find'
C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/configurer.rb:259:in
 `block in retrieve_new_catalog'
 C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/util.rb:327:in `bloc
 k in thinmark'
 C:/Program Files (x86)/Puppet Labs/Puppet/sys/ruby/lib/ruby/1.9.1/benchmark.rb:2
 95:in `realtime'
 C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/util.rb:326:in `thin
 mark'
 C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/configurer.rb:258:in
  `retrieve_new_catalog'
  C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/configurer.rb:69:in
  `retrieve_catalog'
  C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/configurer.rb:109:in
   `prepare_and_retrieve_catalog'
   C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/configurer.rb:175:in
    `run'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/agent.rb:48:in `bloc
    k (4 levels) in run'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/agent/locker.rb:20:i
    n `lock'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/agent.rb:48:in `bloc
    k (3 levels) in run'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/agent.rb:118:in `wit
    h_client'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/agent.rb:45:in `bloc
    k (2 levels) in run'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/agent.rb:83:in `run_
    in_fork'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/agent.rb:44:in `bloc
    k in run'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/application.rb:179:i
    n `call'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/application.rb:179:i
    n `controlled_run'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/agent.rb:42:in `run'

    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/application/agent.rb
    :355:in `onetime'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/application/agent.rb
    :321:in `run_command'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/application.rb:372:i
    n `block (3 levels) in run'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/application.rb:479:i
    n `plugin_hook'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/application.rb:372:i
    n `block (2 levels) in run'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/util.rb:479:in `exit
    _on_fail'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/application.rb:372:i
    n `block in run'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/context.rb:51:in `ov
    erride'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet.rb:233:in `override'

    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/application.rb:362:i
    n `run'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/util/command_line.rb
    :137:in `run'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/util/command_line.rb
    :91:in `execute'
    C:/Program Files (x86)/Puppet Labs/Puppet/puppet/bin/puppet:4:in `<main>'
    Warning: Not using cache on failed catalog
    Error: Could not retrieve catalog; skipping run

Btw, the code changes is not working as expected, after doing some tests. Oh well kinda silly the it passed on the automated tests though.
I will close this request again and probably another day I will try to fulfill all pylint requirements without breaking the code :(


something wrong when running train.py

File "/home/PCDet/pcdet/datasets/kitti/kitti_dataset.py", line 398, in getitem
sample_idx = info['point_cloud']['lidar_idx']
KeyError: 'lidar_idx'

I have encounter the same problem, how would you solve it?

I have encounter the same problem, how would you solve it?

@Cjmmmmmm @wind19970924 @PolyU-IPNL did any one of you solve this issue? If yes, how? I am also getting this error when training the pvrcnn model on kitti dataset.

same problem

same problem

The pkl files may be generated by mmdetection3d in which the keys are different.
Delete or move all the pkl files. Re-generate the data infos by running the following command:
python -m pcdet.datasets.kitti.kitti_dataset create_kitti_infos tools/cfgs/dataset_configs/kitti_dataset.yaml


✨ Add employee responsibility link to profile card

Cc: @adamcogan

Pain

As per conversation with @adamcogan , we need another button to let user click and see the employee responsibility page

Figure: Add a button here to direct the user to the employee responsibility page
Suggested Solution

Tasks

[ ] Investigate deep link of https://sswcom.sharepoint.com/SitePages/Employee-Responsibilities.aspx
[ ] Implement

More Information

Screenshots

Thanks!

Investigate deep link of https://sswcom.sharepoint.com/SitePages/Employee-Responsibilities.aspx

There is currently no deep link available to a specific employee responsibility page. Pending for further decision.

Figure: No deep link for specific employee in the url

Done by adding a new link button on the profile card

Figure: Newly added employee responsibilities button on the profile card


RecoveryServicesClient Item Paged and Authority Error

Hi,
recoveryservices_client = RecoveryServicesClient(credentials, subscription_id)
list_vaults = recoveryservices_client.vaults.list_by_subscription_id()

list_vars returns <iterator object azure.core.paging.ItemPaged at 0x105377df0>
Iteration over itempaged gives this error:
 in raise_from
azure.core.exceptions.ClientAuthenticationError: Authentication failed: Unable to get authority configuration for https://login.microsoftonline.com/xx-xx-xxx. Authority would typically be in a format of https://login.microsoftonline.com/your_tenant Also please double check your tenant name or GUID is correct.

Operations with api and the same service principal gives the list without error.
Any advice would be appreciated.
Best

Label prediction was below confidence level 0.6 for Model:ServiceLabels: 'Recovery Services:0.38581645,Recovery Services Backup:0.09857807,KeyVault:0.075183116'

Please provide solution. Support doesn't accept SDK problems!! If there isn't support for solution for sdk, please inform us for using another solutions or break developments for azure!!!!!

Hi @anotherancientalien! I will close this for now then, please feel free to reopen if you need more help.


Add an automatic setup script

This project installation on Linux and mac work fines and simple but have tried severally to install the project on windows without success.
Suggestion:
It would be nice to have a simple setup.php script (as RoundCube is doing).
The aim would be to simplify the installation of project for the common case of built-in auth, sqlite, mod_php+apache with the spool protected by an .htaccess file, mostly targetting webhosting platforms where shell access is not provided and windows OS users.
Following RC inspiration, the setup could as well remove itself after the procedure is completed, generating a single web page showing the installation details, along with a randomly generated password for the admin user.
Regards,
Thanks and looking forward for a better ticketit installation on windows OS

[ ] Windows support
[ ] Browser install

OK, I'll see how I can get this working in Hell.
The browser-based setup is a good idea and a valid use case, though no shell access is very limiting, I'll see what I can do.

I checked some Windows php-apache howtos and I'd rather avoid Hell, sorry.
I've written a notice in the main readme though in case someone wants to take the effort: https://github.com/balping/ticketit-app#windows-devs-needed

I've just tested the current installation with composer and artisan on windows, no problems with that installation here.
As this stackoverflow post (http://stackoverflow.com/questions/15969948/use-composer-without-ssh-access-to-server) is explaining, it is not possible to use composer without shell access.
A possible solution is to make a package with all dependencies preinstalled. Only then a browser installation would be possible, but you will throw away all the nice things composer provides. In my opinion not a real option.
My advice for @asopiah would be to install ticketit on a local machine with composer, then copy the application to a production server.

@dbeulen
Thank you very much for your investigation!
I found another so article about executing composer commands without shell access. I haven't tried it, it might or might not work. If it does, it would be a much convenient solution compared to pre-packaging.
But I agree, local install + upload should be fine in most cases.

@dbeulen
Your advice of installing the project on a local machine and then copying it to a production server works fine.
Thanks for the suggestion.

I decided no to make a shared-hosting browser install script because it would be too much of a mess.
Every shared hosting provider provides different privileges + I would need to supply regular builds with the latest versions that I wouldn't like to do.
Plus I expect issues coming in due to various misconfigs in various environments - I don't want to deal with that neither.
If you need a laravel app on shared hosting just upload the files. It shouldn't be too hard. But rather rent a VPS, it's not much more expensive and has many benefits.


Termux support

error: Support for this target OS is not implemented yet!
 You may want to create an issue: https://github.com/svartalf/rust-battery/issues/new
  --> /home/builder/.cargo/registry/src/github.com-1ecc6299db9ec823/battery-0.7.4/src/platform/mod.rs:27:9
   |
27 | /         compile_error!("Support for this target OS is not implemented yet!\n \
28 | |             You may want to create an issue: https://github.com/svartalf/rust-battery/issues/new");
   | |___________________________________________________________________________________________________^

error[E0432]: unresolved import `crate::platform::Device`
 --> /home/builder/.cargo/registry/src/github.com-1ecc6299db9ec823/battery-0.7.4/src/types/battery.rs:5:5
  |
5 | use crate::platform::Device;
  |     ^^^^^^^^^^^^^^^^^^^^^^^ no `Device` in `platform`

error[E0432]: unresolved import `crate::platform::Iterator`
 --> /home/builder/.cargo/registry/src/github.com-1ecc6299db9ec823/battery-0.7.4/src/types/iterator.rs:3:5
  |
3 | use crate::platform::Iterator as PlatformIterator;
  |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `Iterator` in `platform`

error[E0432]: unresolved import `crate::platform::Iterator`
 --> /home/builder/.cargo/registry/src/github.com-1ecc6299db9ec823/battery-0.7.4/src/types/manager.rs:5:5
  |
5 | use crate::platform::Iterator as PlatformIterator;
  |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `Iterator` in `platform`

error[E0432]: unresolved import `crate::platform::Manager`
 --> /home/builder/.cargo/registry/src/github.com-1ecc6299db9ec823/battery-0.7.4/src/types/manager.rs:6:5
  |
6 | use crate::platform::Manager as PlatformManager;
  |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `Manager` in `platform`

So, I poked termux a little bit on my phone and I don't think that supporting it in the battery crate would be a good idea:

battery binds to OS APIs, while termux is an emulator and providing support for all emulators possible seems to be excessive
termux-battery-status output hardly can be mapped to what battery::Battery should provide

In a long-term run it would be better for battery to support Android as OS (which is mostly blocked by https://issuetracker.google.com/issues/37095733), so it can be used within termux.
As for your case with starship, you can rewrite the starship::modules::battery::get_battery_status to use battery for OSes supported by it and call termux-battery-status for termux directly

Do you know if there is a way to know if Termux:API is installed? termux-battery-status hangs without it and I would prefer to predict that the command would not hang.

@bbigras sorry, I'm not aware of any way to check this (and personally I think that this is a very strange decision to hang the process instead of failing immediately).
Maybe you can spawn the process, await for stdout with some timeout and then store some kind of flag (ex. in a static var) that termux-battery-status can be called in the current session?

and personally I think that this is a very strange decision to hang the process instead of failing immediately

Just in case you are curious, it seems to send an Android broadcast and wait for the reply on a Unix abstract socket. Maybe it hangs before the reply never comes.
Thanks for the help.

So maybe this issue can be reopened? Because you're not against adding termux support per se, right @svartalf?

* `termux-battery-status` output hardly can be mapped to what `battery::Battery` should provide

I've read that comment but I don't see any 'unfixable. points there.
And you've just mentioned that it's just the 'current state' that's difficult for you.
But maybe I've should have gone into a detailed answer:

* `battery` binds to OS APIs, while `termux` is an emulator and providing support for all emulators possible seems to be excessive

So, I'm not sure whether this is clear already but termux is a terminal emulator. Like the xterm, iTerm. It's not an emulator for an operating system.
Furthermore it's IMHO the most popular one. I'm not sure whether there any any relevant alternatives.

* `termux-battery-status` output hardly can be mapped to what `battery::Battery` should provide

So the productive way of handling this, would be to mention what exactly is needed. This way it would be possible to open an issue in termux-api and fix it.
You somehow missed what info is necessary to map and in which form it is needed.

@alexanderadam you can check battery::Battery struct documentation to see what information I would expect to get from the target OS, all exposed methods are required to provide correct information without any stubs or zeroed values.
termux, of course, is not an "OS", but that just adds an extra question — how to ensure at compile time that we are targeting termux environment and not the usual linux or android targets, I'm not aware of any solution to do that in an elegant way (add a feature for that maybe?).
I'm definitely up for adding functionality needed to run battery (and starship as a consequence) inside of the termux env, but it is out of my scope to work on that directly; if you want to raise an issue for termux-api and communicate with its developers to extend provided API, that would be great.

@svartalf thank you for your response. I created issue 364 for it. Please add information in case I forgot something.

@svartalf just to be sure: did you see the questions in the termux issue?

Also, would you be so kind and reopen this issue then? :wink:
Thank you in advance!

Hi, @alexanderadam!
To this point I don't see how we can add reasonable Termux support into the battery; please, check previous messages in this thread for reasons.

check previous messages in this thread for reasons.

@svartalf, I did. I mean… we wrote earlier, remember? This was the reason why I asked you for further information and opened issue 364 at the termux-api in the first place.
Can you please answer the question I asked earlier: whether all fields are obligatory or whether some of them might be optional?
For instance the fields technology, vendor, model and serial_number doesn't seem so relevant for many cases. I guess they aren't used for for calculations and have probably only a informational value. Thus something like Android as vendor could be suitable as well, I guess?
Did you have a look at the already mentioned issue 364 of the termux-api?

Can you please answer the question I asked earlier: whether all fields are obligatory or whether some of them might be optional?

I'm sorry, I assumed it was obvious from the Battery struct documentation. Basically, any method, which returns Option<T> is, well, optional, as in pub fn temperature(&self) -> Option<ThermodynamicTemperature>.
That means that temperature, cycle_count, vendor, model and serial_number are optional in a current implementation and other methods are not.

Thus something like Android as vendor could be suitable as well, I guess?

There is a subtle difference: "vendor" in here is a manufacturer of the battery itself, in my laptop it is the SMP.

Did you have a look at the already mentioned issue 364 of the termux-api?

Yes, I checked and to this point I don't see how Android' BatteryManager data can be mapped to Battery from this crate.

Hi, @svartalf  just checking out are there still no plans to support termux? 👉🏻 👈🏻


%23 in URL interpreted as #

Steps:

Create a file test.md with only this content: https://github.com/atinfo/awesome-test-automation/blob/master/c%23-test-automation.md
Run markdown-link-check test.md

Expected:

No failure, because site exists and is online

Actual:

ERROR: 1 dead links found!

I think, the %23 is interpreted as the # character and the link checker tries to reach https://github.com/atinfo/awesome-test-automation/blob/master/c, which fails.

I noticed a similar problem for %2F (i.e. /), giving an error on the link below. Possibly same root cause, that the %2F is not kept but replaced.
https://github.com/eclipse-kuksa/kuksa-python-sdk/pkgs/container/kuksa-python-sdk%2Fkuksa-client

I think the underlying issue here is https://github.com/tcort/link-check/issues/45 - discovered this myself earlier and it puts me off what is otherwise a very useful tool


Authorization error for shared LFS objects

Gitea version: 1.2.2
Git version: 2.14.2
Operating system: Linux
Database (use [x]):

[x] PostgreSQL
[ ] MySQL
[ ] MSSQL
[ ] SQLite

Description
Some git lfs object cannot be fetched, but only for some objects for some users:
Authentication required: Authorization error: http://localhost:3000/use/b/info/lfs/objects/...."

From looking at the lfs objects that worked and those who don't, I am now pretty sure it happens when the same lfs object is used by multiple private repositories, ie: when the same file is copied and added in lfs from multiple repositories.
I tracked the authentication up to this auth check in modules/lfs/server.go, but I am not yet fluent enough in go to continue.
It seems reproducible by doing something like this:

create 2 gitea user
create 2 repo from the 1st user
git track, add, commit, and push the same file in both repo
add the second user as colaborator to only the 2nd repo
the second user gets 401 on the lfs object from the second repo

If needed I can write a more detailed repro procedure.
EDIT: repro: the second user needs to NOT be collaborator of the first repo.

I was able to reproduce problem with your provided steps but from what it looks like from gitea LFS code it won't be easy fix as I first thought as in gitea database reference between only first lfs object and repo is saved but not for second repository. So to me it looks like it needs to create data fix migration step to fully fix this

In my case, I will try to change the "can read repo" auth check by a simple "is registered user" check for now (anyone registered has the "security level" to access all LFS files anyway).
And maybe the big lfs oid hash already secures it ? Maybe "has to know the hash to get the file anyway" could be considered as secure ? Put another way, could a malicious someone could know the hash of the file, but not the content ? could the hash/oid could leak without an access the git repo in the first place ? (I am not a security guy, so I will not make that assumption for now)

most probably that will be most fastest way to get it working.
I'm trying to fix now so that new oid/repo combinations are saved correctly

NB! Do not delete repositories containing LFS objects as it is possible that LFS file from server can get deleted even if other repository still references it.

Great thanks !
One last uneducated idea, the JWT token can be trusted right ? then maybe, when there is a JWT, a fast code path could be to resolve the repo from the JWT instead of from the LFS meta data...

No need for that.. Easiest way for you would be to currently change to not check repository from object ID but just using:
	repositoryString := rv.User + "/" + rv.Repo
	repository, err := models.GetRepositoryByRef(repositoryString)

	if err != nil {
		log.Debug("Could not find repository: %s - %s", repositoryString, err)
		writeStatus(ctx, 404)
		return
	}

@Gravemind have submitted PR to fix for newly added files


[Event Request] Table 7326 "Whse. Worksheet Line" – New Event “OnAfterInitLineWithItem”

Hello,
please create a new event in table 7326 "Whse. Worksheet Line" for the function "InitLineWithItem".
Please extend the function with the following publisher as provided:
procedure InitLineWithItem(DocumentType: Option; DocumentNo: Code[20]; DocumentLineNo: Integer; LocationCode: Code[10]; ItemNo: Code[20]; VariantCode: Code[10]; Qty: Decimal; QtyToHandle: Decimal; QtyPerUoM: Decimal)
    begin
        Init;
        "Whse. Document Type" := DocumentType;
        "Whse. Document No." := DocumentNo;
        "Whse. Document Line No." := DocumentLineNo;
        "Location Code" := LocationCode;
        "Item No." := ItemNo;
        "Variant Code" := VariantCode;
        "Qty. (Base)" := Qty;
        "Qty. to Handle (Base)" := QtyToHandle;
        "Qty. per Unit of Measure" := QtyPerUoM;
        OnAfterInitLineWithItem(Rec);
    end;

 [IntegrationEvent(false, false)]
 local procedure OnAfterInitLineWithItem(var WhseWorksheetLine: Record "Whse. Worksheet Line")
    begin
    end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


Plugin openstack

This PR contains the openstack driver for molecule.
Local tests were successfull.

@konstruktoid volume support added.
Could you help to fix the "tox / lint" job?

The lint job will be fixed with https://github.com/ansible-community/molecule-plugins/pull/159, bit I don't have permissions to add or remove tags.

volume support added.

Awesome, will test as soon as possible

@konstruktoid I refactored the volume creation.

https://github.com/ansible-community/molecule/issues/3919 will probably impact this

@konstruktoid what is the current status? Do you need anything else so that the PR can be merged?

Just that any conflicts and lints need to be fixed, and then another reviewer with merge permissions needs to give a thumbs up.

The lint job will be fixed with #159, but I don't have permissions to add or remove tags.

I thought the lint job is fixed with #159. Local linting was successfull. I will have a look at the merge conflict.

Hi!
I locally merged your OpenStack plugin code with the molecule-plugins upstream "main" branch to check the code against the latest lint configuration, I got only 2 errors:
yaml[octal-values]: Forbidden implicit octal value "0600"
test/roles/openstackplugin/molecule/default/create.yml:36

yaml[octal-values]: Forbidden implicit octal value "0600"
test/roles/openstackplugin/molecule/default/destroy.yml:23

After using quotes around those 0600  permission strings the code passed all the latest lint tests. I can create a PR against your fork, but the changes are so minimal that you may apply them directly.


relay simulator not working

the following code never gets triggered by the relay simulator:
modules.relay1.onOn(() => {
    // when relay transitions from closed to open
    basic.showString("On")
    control.assert(!!modules.relay1.closed())
})

modules.relay1.onOff(() => {
    // when relay transitions from open to closed
    basic.showString("Off")
    control.assert(!modules.relay1.closed())
})

Fixed.
Note that currently there is a race with your assertion, the closed state is potentially out of sync with the event.


Is every 30 seconds possible

It is not clear from the documentation whether a cron expression like */30 * * * * * (execute every 30 seconds) is something that is supported in the product or not. Could you please elaborate on this?

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

ID: b5527c3b-a5da-c73d-66c2-20d96003ff7c
Version Independent ID: 42154c7b-b0e0-26db-79bc-3f1673c48e40
Content: Timer trigger for Azure Functions
Content Source: articles/azure-functions/functions-bindings-timer.md
Service: functions
GitHub Login: @ggailey777
Microsoft Alias: glenga

Thanks for the feedback! We are currently investigating and will update you shortly.

@aklefdal Yes, It is supported in Azure functions to execute a timer triggered function every 30 seconds using the chron expression */30 * * * * *
Thank you for the feedback. The document contains few sample examples. More examples can be added to make sure you get the best doc experience as a customer.
I have assigned the issue to the content author to evaluate and update as appropriate.

This request for additional examples is being tracked internally by 1325840.
In the meantime,  #please-close per policy.

I think this is worth adding to the docs as AWS lambdas only supports expressions of up to a minute. Would make it an easier decision when choosing between the two with these requirements. https://docs.aws.amazon.com/lambda/latest/dg/services-cloudwatchevents-expressions.html

sorry to necropost, but the JSON schema for bundings.[].schedule in the function.json returns a warning saying that */30 * * * * * is not a valid schedule. This is the warning I see in VSCode:
String does not match the pattern of "^(\*|((([1-5]\d)|\d)(-(([1-5]\d)|\d)(/\d+)?)?)(,((([1-5]\d)|\d)(-(([1-5]\d)|\d)(/\d+)?)?))*)(/\d+)? (\*|((([1-5]\d)|\d)(-(([1-5]\d)|\d)(/\d+)?)?)(,((([1-5]\d)|\d)(-(([1-5]\d)|\d)(/\d+)?)?))*)(/\d+)? (\*|(((1\d)|(2[0-3])|\d)(-((1\d)|(2[0-3])|\d)(/\d+)?)?)(,(((1\d)|(2[0-3])|\d)(-((1\d)|(2[0-3])|\d)(/\d+)?)?))*)(/\d+)? (\*|((([1-2]\d)|(3[0-1])|[1-9])(-(([1-2]\d)|(3[0-1])|[1-9])(/\d+)?)?)(,((([1-2]\d)|(3[0-1])|[1-9])(-(([1-2]\d)|(3[0-1])|[1-9])(/\d+)?)?))*)(/\d+)? (\*|(([A-Za-z]+|(1[0-2])|[1-9])(-([A-Za-z]+|(1[0-2])|[1-9])(/\d+)?)?)(,(([A-Za-z]+|(1[0-2])|[1-9])(-([A-Za-z]+|(1[0-2])|[1-9])(/\d+)?)?))*)(/\d+)? (\*|(([A-Za-z]+|[0-6])(-([A-Za-z]+|[0-6])(/\d+)?)?)(,(([A-Za-z]+|[0-6])(-([A-Za-z]+|[0-6])(/\d+)?)?))*)(/\d+)?$".

is every 90 secs possible in cron jobs?

What is the minimum? :-)


Has anyone been able to implement DND with a modal?

I am using react-modal, what i want is when i start dragging my object a fullscreen modal pops up and i can drag and drop to that. but whenever i open my modal drag layer disappears.

@tjones0808 finally, what is a solution here? please, comment

I'am trying to use react-dnd  inside a react portal , I think this is similar to a modal , and the dnd implementation is not working , but it is working fine in components outside the portal , any solutions ? I have been stuck in this one for quite some time

Can you wire up a live sandbox demonstrating your issue @abhishekmg

@darthtrevino , I have fixed that issue. Nothing wrong with react-dnd , it was a problem from my implementation . Anyway here is a codesandbox link https://codesandbox.io/s/green-frog-3ddiw for a very basic implementation of using react-dnd in a modal  , if this would help anyone .

@darthtrevino , I have fixed that issue. Nothing wrong with react-dnd , it was a problem from my implementation . Anyway here is a codesandbox link https://codesandbox.io/s/green-frog-3ddiw for a very basic implementation of using react-dnd in a modal , if this would help anyone .

Is their any benefit of using portal here ? Like I don't have any modal implementation. But would like to know if it can be good code practice to use portal ?


Calendar automatically move on first date.

(Required) Version Number:   7.1.5, 8.0.2
Description
When i use reload calendar multiple times at same time with some delay. then calander indicate very first date that calendar was start. my calendar range  is from 1 jan 2018 to 31 dec 2022.
Steps To Reproduce
reload calendar mutliple times in same time with some 0.2 delay and try with to change mode (Week to month and month to week). then you will see you date indicator  1 Jan 2018.
Expected Behavior
i notice that during multiple time reload calendar. visible cell  empty in some time and move on very first date. that calendar was start.
Additional Context

Can you paste me the code you use to reload the calendar multiple times?
I would like to know the reason for doing that.
Also, is it possible you can provide me a sample app that reproduces this issue? This will be very helpful.

I'm facing this problem while using voiceOver too.
When the focus is on the calendar (from navbaritem to calendar), it scrolls to the first month. When the focus comes from tabBar to Calendar, it scrolls to last month.
I've tried to disable scroll when voiceOver is on, but no success.

@patchthecode Hey, I'm also facing similar issues. When VoiceOver is enabled and user is scrolling, it can skip to the previous month or a subsequent year within the same month. It's odd. I can't share code or a video because it would go against my company's NDA and intellectual property agreement that I signed, but wanted to know if there's been a semblance of a resolve or something close to that since this issue has been opened.