Upgrade canvas to 10.9.0

Developer's Certificate of Origin 1.1
   By making a contribution to this project, I certify that:

   (a) The contribution was created in whole or in part by me and I
       have the right to submit it under the Apache License 2.0; or

   (b) The contribution is based upon previous work that, to the best
       of my knowledge, is covered under an appropriate open source
       license and I have the right under that license to submit that
       work with modifications, whether created in whole or in part
       by me, under the same open source license (unless I am
       permitted to submit under a different license), as indicated
       in the file; or

   (c) The contribution was provided directly to me by some other
       person who certified (a), (b) or (c) and I have not modified
       it.

   (d) I understand and agree that this project and the contribution
       are public and that a record of the contribution (including all
       personal information I submit with it, including my sign-off) is
       maintained indefinitely and may be redistributed consistent with
       this project or the open source license(s) involved.

Codecov Report

Merging #135 (568b591) into master (d215120) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #135   +/-   ##
=======================================
  Coverage   78.73%   78.73%
=======================================
  Files          40       40
  Lines        1331     1331
  Branches      309      309
=======================================
  Hits         1048     1048
  Misses        220      220
  Partials       63       63

Continue to review full report at Codecov.

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


Monitor CronJob Execution Fails due to Python File PermissionError

Environment:
OpenShift: 4.8.24
CP4D: 4.0.6
I followed the guide here: https://ibm.github.io/cp4d-monitors/monitors/cp4d-watsonstudio-job-schedule-info/manual/
I have a feeling there is a step missing on the documentation to get this running. =(
CronJob Logs:
-------------------------------------------------------------
Executing CP4D Monitor python file: /cp4d-monitoring-scripts/cp4d_watsonstudio_job_schedule_info.py
Traceback (most recent call last):
  File "/usr/lib64/python3.8/pathlib.py", line 1288, in mkdir
    self._accessor.mkdir(self, mode)
FileNotFoundError: [Errno 2] No such file or directory: '/user-home/_global_/monitors'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib64/python3.8/pathlib.py", line 1288, in mkdir
    self._accessor.mkdir(self, mode)
FileNotFoundError: [Errno 2] No such file or directory: '/user-home/_global_'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/cp4d-monitoring-scripts/cp4d_watsonstudio_job_schedule_info.py", line 1, in <module>
    from lib import cp4d_monitor
  File "/cp4d-monitoring-scripts/lib/cp4d_monitor.py", line 102, in <module>
    Path(cache_folder).mkdir( parents=True, exist_ok=True )
  File "/usr/lib64/python3.8/pathlib.py", line 1292, in mkdir
    self.parent.mkdir(parents=True, exist_ok=True)
  File "/usr/lib64/python3.8/pathlib.py", line 1292, in mkdir
    self.parent.mkdir(parents=True, exist_ok=True)
  File "/usr/lib64/python3.8/pathlib.py", line 1288, in mkdir
    self._accessor.mkdir(self, mode)
PermissionError: [Errno 13] Permission denied: '/user-home'
-------------------------------------------------------------
Exiting Cloud Pak for Data Watson Studio Runtime usage monitor....```

Hi Tyler, I will investigate this.

@tylerstanczak  can you confirm the following patch was performed?
oc patch cronjob -n ${CP4D_PROJECT} ${CP4D_CRONJOB} \
--type=json \
--patch '[{"op": "add","path": "/spec/jobTemplate/spec/template/spec/containers/0/volumeMounts/-","value": {"name": "user-home-mount","mountPath": "/user-home"}}]'

you can do oc edit cronjob <cronjob> and ensure the volumeMounts is specified.

Thank you @arthurlaimbock that seemed to resolve the above error.
However, a new error now appears:
Starting Cloud Pak for Data Watson Studio Runtime usage monitor....
-------------------------------------------------------------
Executing CP4D Monitor python file: /cp4d-monitoring-scripts/cp4d_watsonstudio_job_schedule_info.py
Got error for the command: "/opt/app-root/bin/cpdctl project list --context default --output json"
Please refer to the response for details: FAILED
Error processing the response received, most likely an error response:
{"_statusCode_":401,"exception":"User unauthorized to invoke this endpoint.","message":"Unauthorized"}

Got error to list all projects.
Traceback (most recent call last):
  File "/cp4d-monitoring-scripts/cp4d_watsonstudio_job_schedule_info.py", line 169, in <module>
    main()
  File "/cp4d-monitoring-scripts/cp4d_watsonstudio_job_schedule_info.py", line 31, in main
    projects = cp4d_monitor.get_project_list()
  File "/cp4d-monitoring-scripts/lib/cp4d_monitor.py", line 126, in get_project_list
    if project_data['total_results'] > 0:
TypeError: list indices must be integers or slices, not str
-------------------------------------------------------------
Exiting Cloud Pak for Data Watson Studio Runtime usage monitor....

Is this something you've seen before?

yes, did you update the admin password? If so, please update the admin-user-details secret. Or is the admin user disabled?

It appears that our admin user was disabled. Thanks for the tip Arthur! 😄


LogsTable.rows misses string[] and number[] types

Package Name: @azure/monitor-query
Package Version: 1.1.1

Describe the bug
Cell value in results row are defined as Date | string | number | Record<string, unknown> | boolean.
https://github.com/Azure/azure-sdk-for-js/blob/9488fe4bd780306e2f00eaa1509eba20982215f4/sdk/monitor/monitor-query/src/models/publicLogsModels.ts#L164
Query with make-series creates cell value of type string[]. While series_decompose creates values of number[].
Expected behavior
Cell value type should be extended to include string[] | number[], i.e.
rows: (Date | string | number | Record<string, unknown> | boolean | string[] | number[])[][];

@irnc
What exactly is the discrepency here Even if the make-series returns string[] it is returned correctly. (Because of the [][] outside the brackets). I have written a sample program to verify this behavior:
import { DefaultAzureCredential } from "@azure/identity";
import { LogsQueryClient, LogsQueryResult, LogsQuerySuccessfulResult } from "@azure/monitor-query";

async function main() {
    const tokenCredential = new DefaultAzureCredential();
    const logsQueryClient = new LogsQueryClient(tokenCredential);
    const result: LogsQueryResult = await logsQueryClient.queryWorkspace("<YOUR_WORKSPACE_ID>",
        `Usage | limit 100 | make-series count() on TimeGenerated from ago(10d) to now() step 1h`,
        {
        startTime: new Date(new Date().getTime() - 24 * 60 * 60 * 10000),
        endTime: new Date(),
    });
    console.log((result as LogsQuerySuccessfulResult).tables[0].rows[0][0]);//The rows[0][0] itself is an array.
}

main();

If you face any more issues, please let me know. Else, could you give me an example of the problem, with explanation, that you are facing? Thanks.


More levels

Do we have room for all the original stock levels?

Kinda depends on #10

There are 2030 original stock levels, so no. (For some reason I thought all the level packs added up to 2030.)
We can make a distribution with a few more levels than we can fit in this cart though, as a multicart!
Each level is 576 bytes. We can compress that a bit by making all the strings null-terminated instead of fixed sizes, and maybe a simple run-length encoding or something. But let's use that as a baseline.
How many levels we can fit inside the regular cart (the one that will be played on the BBS) remains to be seen, but right now those are stored as strings (that don't compress well to PNG). We can find a better way, or add some more in the sfx/music slots and the unused parts of the map/sprite sheet. Not too many though.
For multicarts (for itch/executable distribution), each external cart can hold 17152 bytes of addressable (through reload()) and persistent memory. That's 29 additional levels per extra cart (and perhaps a couple more with null strings).
We can read and hold 6911 bytes into the main cart's work RAM at a time, which is just shy of 12 levels.
So we can't feasibly store 2030 levels, but we can make room for at least a few more.

Just for fun, I did some test runs of RLE on level data.
I took LaserTank.lvl (2030 levels of great variety) and Tutor.LVL (92 smaller levels of less variety and more repeated squares), converted their level data to hex strings, and tried a few approaches. For all of them I used / as run designator.
The best RLE compression for Tutor.LVL was the simplest one:

Two digit decimal run lengths, 01-99
Runs shorter than 3 are not compressed (as they take up 4 characters, one fewer than compressed - compare /02ff and ffff)

The best RLE compression for LaserTank.lvl, however, was:

One digit hexadecimal run length, 0-f
Runs shorter than 2 are obviously not compressed (they're not runs)
Runs longer than f are not compressed (the single hex digit can't represent runs that long)
As a result, 0-f can store runs between 2-17 (as we don't need to represent runs of length 0 and 1)

Perhaps not surprising results, as Tutor.LVL is a pretty special case – the levels are instructive and often smaller on the game board, with lots of repeated tiles outside the level proper.
The hexadecimal single digit run length compression seems best in the general case.

LOL just kidding, I didn't correctly split runs longer than f into multiple consecutive runs. Tutor.LVL is also best compressed with the second method, which should have been obvious at any time other than midnight.


Figure out workaround for NVENC bug

The video starts off with a freeze and then it records. Is it possible the video card needs to warm up?

record with smear seconds at 1s intervals, cut up with lossless cutting?


Split file stream into Uri filestreams and Lumeo file streams

This fixes two things over the previous version:

Support for streams made from files uploaded to our API. (LumeoFile). They are represented by a file_id instead of a URL because the presigned S3 URLs expire after some time.
Support for multiple files in a file stream. E.g. if a customer has their videos in 1 hour chunks but wants to run a deployment on 24 hours of video. api-server will initially prevent creating file streams with multiple files, but this can be then unlocked at a later date once lumeod supports it.

:see_no_evil: Ooops, I forgot ro remove some dead code in there :sweat_smile: the entire OneOrMore stuff is leftover from trying things.


CAMEL-20638: camel-platform-http - Do not return http request headers - FIX

Description

fix typo in PlatformHttpEndpoint that was calling applyFilterToExternalHeaders in place where applyFilterToCamelHeaders must be called; added test that covers this behavior

Tracking
https://issues.apache.org/jira/browse/CAMEL-20638

/component-test camel-platform-http camel-platform-http-vertx camel-platform-http-main camel-platform-http-jolokia


Eliminate unused variables, symbols, ...

There are several #defines, variables, and struct members that are left over from previous implementations or other uses.  This pull request removes several...

In process of merging by hand right now.

Merged this by hand; for whatever reason it is not picked up as merging the pull request, so closing by hand.


SyntaxError in UlsArgsParser: Unmatched Parenthesis in f-string Causing Application Failure with python 3.9 base image

Is your feature request related to a problem? Please describe.
When running the application, a SyntaxError occurs due to an unmatched parenthesis in an f-string inside the UlsArgsParser.py module. This causes the application to fail at startup.
Error traceback:
Traceback (most recent call last):
  File "/opt/akamai-uls/uls/bin/uls.py", line 27, in <module>
    import modules.UlsArgsParser as ArgsParser
  File "/opt/akamai-uls/uls/bin/modules/UlsArgsParser.py", line 55
    help=f"Adjust the logging date/time format to your needs, (Default: {uls_config.log_datefmt.replace("%", "%%")})")
                                                                                ^
SyntaxError: f-string: unmatched '('

Describe the solution you'd like
The corrected code should look like this:
help=f"Adjust the logging date/time format to your needs, (Default: {uls_config.log_datefmt.replace('%', '%%')})")

Additional context
This issue occurs when the application is executed, specifically in the UlsArgsParser.py module. Fixing the f-string will allow the application to run correctly without encountering a syntax error.

Hi @sethumadhav07,
the bug you describe here should have been fixed with our latest release ULS v1.8.2 - can you please check the version you have discovered the bug and upgraded?
Please let me know if you still encounter an issue with this bug in the latest version.
We have also introduced a better test coverage throughout different python versions ;)
Best Mike

Hi @MikeSchiessl I see the latest release addressed it. closing this task now. Thanks


Problem with using "query" and 'write' method on raspberry pi2

I am using raspberry pi 2 with pyvisa to control Tektronix signal oscilloscope. The issue I got is I cannot use 'write' and 'query' methods and both of them gave the same error:
>>> inst.write('measu:meas1:source1 ch1')
>>> inst.query('measu:meas1:value?')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/pyvisa/resources/messagebased.py", line 187, in write
    count = self.write_raw(message.encode(enco))
  File "/usr/local/lib/python2.7/dist-packages/pyvisa/resources/messagebased.py", line 165, in write_raw
    return self.visalib.write(self.session, message)
  File "/usr/local/lib/python2.7/dist-packages/pyvisa-py/highlevel.py", line 281, in write
    return self.sessions[session].write(data)
  File "/usr/local/lib/python2.7/dist-packages/pyvisa-py/usb.py", line 117, in write
    count = self.interface.write(data)
  File "/usr/local/lib/python2.7/dist-packages/pyvisa-py/protocols/usbtmc.py", line 286, in write
    bytes_sent += raw_write(data)
  File "/usr/local/lib/python2.7/dist-packages/pyvisa-py/protocols/usbtmc.py", line 202, in write
    return self.usb_send_ep.write(data)
File "/usr/local/lib/python2.7/dist-packages/usb/core.py", line 349, in write
    return self.device.write(self, data, timeout)
  File "/usr/local/lib/python2.7/dist-packages/usb/core.py", line 878, in write
    self.__get_timeout(timeout)
  File "/usr/local/lib/python2.7/dist-packages/usb/backend/libusb1.py", line 760, in bulk_write
    timeout)
  File "/usr/local/lib/python2.7/dist-packages/usb/backend/libusb1.py", line 856, in __write
    _check(retval)
  File "/usr/local/lib/python2.7/dist-packages/usb/backend/libusb1.py", line 552, in _check
    raise USBError(_strerror(ret), ret, _libusb_errno[ret])
  File "/usr/local/lib/python2.7/dist-packages/usb/backend/libusb1.py", line 541, in _strerror
    return _lib.libusb_strerror(errcode).decode('utf8')
  File "/usr/lib/python2.7/ctypes/__init__.py", line 378, in __getattr__
    func = self.__getitem__(name)
  File "/usr/lib/python2.7/ctypes/__init__.py", line 383, in __getitem__
    func = self._FuncPtr((name_or_ordinal, self))
AttributeError: /lib/arm-linux-gnueabihf/libusb-1.0.so.0: undefined symbol: libusb_strerror

According to https://github.com/walac/pyusb/issues/57  your libusb version is not supported by pyusb. (Non python users have reported the same problem with older libusb https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=100607)

I tried the solution above, but none of them worked for me. Any more suggestion? Thanks

It would be really good to know if the problem is in pyvisa or pyusb. Till now, it seems to be a pyusb problem. Is there anything you can test using just pyusb?

Not really, cuz most of my codes need to get measured data from the devices. If "query" does not work, it really hard for me to continue.

I mean that you try another device. i.e. you use pyusb to get the value of a mouse or to exchange info between two computer. We would like to know if pyusb is working on your arm

Oh, I see. I tried another device but same error appeared when I used 'query' method. Also, I tried everything on a brand-new raspberry pi 2 but it seems like they have the same problem

try with a mouse. It involves only reading
http://www.orangecoat.com/how-to/read-and-decode-data-from-your-mouse-using-this-pyusb-hack

Hi, I tried the script but it gave me the error:
Traceback (most recent call last):
File "mouse.py", line 14, in
if dev.is_kernel_driver_active(interface) is True:
File "/usr/local/lib/python2.7/dist-packages/usb/core.py", line 992, in is_kernel_driver_active
interface)
File "/usr/local/lib/python2.7/dist-packages/usb/backend/init.py", line 363, in is_kernel_driver_active
_not_implemented(self.is_kernel_driver_active)
File "/usr/local/lib/python2.7/dist-packages/usb/backend/init.py", line 79, in _not_implemented
raise NotImplementedError(func.name)
NotImplementedError: is_kernel_driver_active

I am pretty sure you have a problem with your PyUSB installation. I would suggest that you post this last thing in the PyUSB issues, they might be able to help.

Thanks a lot, I will do it definitely.

By the way, I solved the mouse testing script problem via installing pyusb1.0.0b1 from https://github.com/arvydas/blinkstick-python/wiki/NotImplementedError-is_kernel_driver_active-on-some-Linux-systems. However, this package is not compatible with the one used by pyvisa because after I installed pyusb1.0.0b1, I cannot even use "open_resource() and list_resources()" methods.

Yes, we use heavily some of the new features of pyusb. Let's try to work with the PyUSB people to solve it.

Post this on PyUSB issues, I will jump in as well

Thanks, I posted the issue already: https://github.com/walac/pyusb/issues/101.

As discussed in the pyusb thread, it is not a pyvisa issue. Therefore I am closing it.


[Bug]: Nested references don't resolve for Async2Pojo generation

ZenWave Version
1.6.0
Execution Environment
JBang Alias (CLI)
ZenWave Plugin
AsyncApiJsonSchema2PojoPlugin
What happened?
This seems similar to https://github.com/ZenWave360/zenwave-sdk/issues/1
When I have a nested schema structure such as A->B->C, only B will resolve and C will not be present in the generated code.
Example schema that reproduces the issue:
asyncapi: '2.6.0'
info:
  title: Account Service
  version: 1.0.0
  description: This service is in charge of processing user signups
channels:
  exampleOp:
    subscribe:
      operationId: exampleOp
      message:
        $ref: '#/components/messages/ExampleMessage'
components:
  messages:
    ExampleMessage:
      payload:
        $ref: '#/components/schemas/Car'
  schemas:
    Base:
      type: object
      additionalProperties: false
      title: Base
      properties:
        reference:
          type: string
    Engine:
      title: Engine
      allOf:
        - $ref: '#/components/schemas/Base'
        - type: object
          title: Engine
          additionalProperties: false
          properties:
            mileage:
              type: string
    Car:
      title: Car
      allOf:
        - $ref: '#/components/schemas/Engine'
        - type: object
          title: Car
          additionalProperties: false
          properties:
            make:
              type: string

In above example, Car will not be generated, only Engine
Relevant ZDL Model
No response

confirmed, there is a problem in https://www.zenwave360.io/json-schema-ref-parser-jvm/
this is the schema resolved after bundling all $refs and merging allOfs
{
  "additionalProperties" : false,
  "type" : "object",
  "title" : "Engine",
  "properties" : {
    "reference" : {
      "type" : "string"
    },
    "mileage" : {
      "type" : "string"
    }
  }
}

hi @saturna thanks for reporting this issue
a fix has been released for the upstream library and it will be released for zenwave-sdk in the comming days

Thank you for delivering the fix so quickly!  🙏

(maybe you can star it, that would help bring awarenes)


[flutter web] zxingBarcodeFormat: return type 'int' doesn't allow null

Hi with the current version of the package (3.5.5) app does not get executed on flutter web.
Flutter doctor
[✓] Flutter (Channel stable, 3.3.10, on macOS 13.6 22G120 darwin-arm, locale en-ES)
[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0-rc5)
[✓] Xcode - develop for iOS and macOS (Xcode 15.1)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2022.1)
[✓] Connected device (3 available)
[✓] HTTP Host Availability

Console shows the following error:
Launching lib/main_development.dart on Chrome in debug mode...
Waiting for connection from debug service on Chrome...
../../../../.pub-cache/hosted/pub.dartlang.org/mobile_scanner-3.5.5/lib/src/web/zxing.dart:106:11: Error: A non-null value must be returned since the return type 'int' doesn't allow null.
  int get zxingBarcodeFormat {
          ^
Failed to compile application.

I traced the error and realized that the switch case inside that method has not a default statement, so Dart thinks that a null value might be returned.
Here is the PR that fix this, i'll be using my forked version meanwhile.

@hazzo Sorry for the delay, but this is now available on Pub.dev in version 3.5.6


docs(managing_deis): clarify reasons for disabling CoreOS upgrades

etcd/fleet incompatibilities used to be a problem, but not so
much anymore - we should stop calling that out.
ping @gabrtv

Language LGTM.  While I want to enable rolling updates, they're simply too disruptive today.

lgtm. Haven't seen any incompatibility issues in quite some time over here, either.

That is a better explanation, LGTM.


Graph canvas resize issue

Work on resolving the issue with the canvas resizing on window resize. This happens due to NodeGraph.js using helpers.js createCanvas which registers a resize handler. This resize handler sets css width/height to half of the canvas width and height.
Options I can think of:

Disable resizing for graph canvas. By creating a canvas in the html instead of dynamically or just not registering the resize handler. Fixes the immediate issue but might cause new issues when trying to work at different screen sizes.
Use a custom resize handler/add a parameter to the existing resize handler to disable the 2:1 scaling between css and canvas.

Gonna close this, as I've added this change and more in the #42 PR


dep(*): update tidb to include a change

Signed-off-by: lance6716<EMAIL_ADDRESS>
What problem does this PR solve?

Issue Number: ref #4287
What is changed and how it works?
to include https://github.com/pingcap/tidb/pull/41076
Check List
Tests

No code

Questions
Will it cause performance regression or break compatibility?
Do you need to update user documentation, design documentation or monitoring documentation?
Release note
`None`.

/cc @GMHDBJD @lichunzhu

/run-all-tests

/merge

/run-integration-test

/run-dm-integration-test

/run-kafka-integration-test


Allow multiple sets of schedulers

This is equivalent to "flushing" in other ECS frameworks. This allows entities created/deleted in scheduler set A to take effect before systems in scheduler set B execute, thus allowing more flexibility with entity creation partition guarantees.

This can be achieved by refactoring the scheduler builder code such that resource requests registered from separate scheduler sets are aggregated to the same world.


Add SonarCloud code analysis

I would just recommend disabling the PR comments since it adds a new comment on each push to a PR which can get quite spammy (sadly it doesn't support updating a comment like codecov.io integration does).

And you can also add badge to the readme -
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=scalyr_kafka-connect-scalyr&metric=alert_status)](https://sonarcloud.io/dashboard?id=scalyr_kafka-connect-scalyr)

It will show correct value once that PR is merged into master and analysis runs on master branch.

Since we already run unit tests as part of a maven target and build, it probably also shouldn't be too hard to submit coverage data to sonarcloud (we just need to write coverage data to junit / xunit file and then correctly configure sonar cloud config).

Added Jacoco code coverage integrated with Sonar Cloud.
Added Sonar Cloud badge to README.


Sometimes, several attributes are lack

Example:
sotetsuk:~/github/go-scholar]$ ./go-scholar cite<PHONE_NUMBER>155766159 | python -mjson.tool                                                        (master)
INFO[0000] URL is generated                              url=https://scholar.google.co.jp/scholar?hl=en&cites=5198380018155766159&as_ylo=&as_yhi=&num=10&start=
INFO[0001] goquery.Document is generated                 doc.url=https://scholar.google.co.jp/scholar?hl=en&cites=5198380018155766159&as_ylo=&as_yhi=&num=10&start=
[
    {
        "ClusterId": "15176406189762137832",
        "InfoId": "6M7PgwVtndIJ",
        "NumberOfCitations": "4878",
        "NumberOfVersions": "3",
        "PDFLink": "",
        "PDFSource": "",
        "Title": "",
        "URL": "",
        "Year": "2010"
    },
    {
        "ClusterId": "10768273690414176708",
        "InfoId": "xFlSYd6XcJUJ",
        "NumberOfCitations": "4511",
        "NumberOfVersions": "25",
        "PDFLink": "http://www.annualreviews.org/doi/pdf/10.1146/annurev.an.24.100195.000523",
        "PDFSource": "annualreviews.org",
        "Title": "Ethnography in/of the world system: The emergence of multi-sited ethnography",
        "URL": "http://www.jstor.org/stable/2155931",
        "Year": "1995"
    },
    {
        "ClusterId": "15852875359805474108",
        "InfoId": "PIW_ySW6ANwJ",
        "NumberOfCitations": "3304",
        "NumberOfVersions": "4",
        "PDFLink": "",
        "PDFSource": "",
        "Title": "Subtractive schooling: US-Mexican youth and the politics of caring",
        "URL": "https://books.google.co.jp/books?hl=en&lr=&id=haOuu_tcc3kC&oi=fnd&pg=PR3&ots=SU95K0lh9o&sig=hlnnLgwwZkLYufbCEwuCd2lVskQ",
        "Year": "2010"
    },
    {
        "ClusterId": "9034723394229602055",
        "InfoId": "B4f3HA_JYX0J",
        "NumberOfCitations": "2177",
        "NumberOfVersions": "2",
        "PDFLink": "",
        "PDFSource": "",
        "Title": "The men and the boys",
        "URL": "https://books.google.co.jp/books?hl=en&lr=&id=i2r2k8DVvkAC&oi=fnd&pg=PA3&ots=RcJG1g_IUh&sig=6bN6zLQmwBjBrGhtyWUDNacWzx4",
        "Year": "2000"
    },
    {
        "ClusterId": "8289429773922328844",
        "InfoId": "DOEvyXX4CXMJ",
        "NumberOfCitations": "1605",
        "NumberOfVersions": "",
        "PDFLink": "",
        "PDFSource": "",
        "Title": "",
        "URL": "",
        "Year": "1997"
    },
    {
        "ClusterId": "2249363497151067461",
        "InfoId": "RXVr2i5YNx8J",
        "NumberOfCitations": "1506",
        "NumberOfVersions": "6",
        "PDFLink": "",
        "PDFSource": "",
        "Title": "Bad boys: Public schools in the making of black masculinity",
        "URL": "https://books.google.co.jp/books?hl=en&lr=&id=3YMDorLC-cQC&oi=fnd&pg=PR9&ots=Vfyik-bI0R&sig=zCj-dkD8ulSmfuP_RxEbTYIX1gg",
        "Year": "2001"
    },
    {
        "ClusterId": "10392692353422046526",
        "InfoId": "PrWj8aFCOpAJ",
        "NumberOfCitations": "1498",
        "NumberOfVersions": "7",
        "PDFLink": "http://loicwacquant.net/assets/Books/TOC/UO_TOC.pdf",
        "PDFSource": "loicwacquant.net",
        "Title": "Urban outcasts: A comparative sociology of advanced marginality",
        "URL": "https://books.google.co.jp/books?hl=en&lr=&id=APjN-RQuW-sC&oi=fnd&pg=PR7&ots=xcK_8Q0qtD&sig=M9ap6cbS_hjQIdgFpoCVoEsxBoM",
        "Year": "2008"
    },
    {
        "ClusterId": "10848164123129590026",
        "InfoId": "CrFGQMtrjJYJ",
        "NumberOfCitations": "1310",
        "NumberOfVersions": "3",
        "PDFLink": "",
        "PDFSource": "",
        "Title": "Contradictions of school reform: Educational costs of standardized testing",
        "URL": "https://books.google.co.jp/books?hl=en&lr=&id=XGyTAgAAQBAJ&oi=fnd&pg=PP1&ots=dEgKgGnXwR&sig=SYKjCvU7_w-259-WmyipffppMpA",
        "Year": "2002"
    },
    {
        "ClusterId": "9936795459500610273",
        "InfoId": "4ZI_sdKW5okJ",
        "NumberOfCitations": "1277",
        "NumberOfVersions": "5",
        "PDFLink": "",
        "PDFSource": "",
        "Title": "Masculinities and globalization",
        "URL": "http://jmm.sagepub.com/content/1/1/3.short",
        "Year": "1998"
    },
    {
        "ClusterId": "12316652552464440627",
        "InfoId": "Mx2Ncz2K7aoJ",
        "NumberOfCitations": "1203",
        "NumberOfVersions": "",
        "PDFLink": "",
        "PDFSource": "",
        "Title": "Ain't no makin'it",
        "URL": "https://books.google.co.jp/books?hl=en&lr=&id=7O6CDWsP3rAC&oi=fnd&pg=PA3&ots=Nw8WGJdo6y&sig=8wQKa3Nd2gcyPgYB1w_GIENFsYE",
        "Year": "2010"
    }
]

Example of lack versions:
[sotetsuk:~/github/go-scholar]$ ./go-scholar find<PHONE_NUMBER>449519147 | python -mjson.tool                                                        (master)
INFO[0000] URL is generated                              url=https://scholar.google.co.jp/scholar?hl=en&cluster=3391028632449519147&num=1
INFO[0001] goquery.Document is generated                 doc.url=https://scholar.google.co.jp/scholar?hl=en&cluster=3391028632449519147&num=1
[
    {
        "ClusterId": "3391028632449519147",
        "InfoId": "Kw5VJJNaDy8J",
        "NumberOfCitations": "10431",
        "NumberOfVersions": "",
        "PDFLink": "",
        "PDFSource": "",
        "Title": "Learning with kernels: support vector machines, regularization, optimization, and beyond",
        "URL": "https://books.google.co.jp/books?hl=en&lr=&id=y8ORL3DWt4sC&oi=fnd&pg=PR13&ots=bKyS9vP5DC&sig=G9cEGv1MAk2U821APOOyUn1N3eA",
        "Year": "2002"
    }
]

https://scholar.google.co.jp/scholar?hl=en&cluster=3391028632449519147&num=1

https://scholar.google.co.jp/scholar?q=Learning+with+kernels%3A+support+vector+machines%2C+regularization%2C+optimization%2C+and+beyond&btnG=&hl=en&num=1&as_sdt=0%2C5

find で検索するとどうやらバージョンや引用が出てこない

Example of lacking info-id. Related articles does not exist
[sotetsuk:~/github/go-scholar]$ ./go-scholar cite<PHONE_NUMBER>201102290 | python -mjson.tool                            (bugfix-cite-versions-switching-#33)
INFO[0000] URL is generated                              url=https://scholar.google.co.jp/scholar?hl=en&cites=5362332738201102290&as_ylo=&as_yhi=&num=10&start=
INFO[0000] goquery.Document is generated                 doc.url=https://scholar.google.co.jp/scholar?hl=en&cites=5362332738201102290&as_ylo=&as_yhi=&num=10&start=
[
    {
        "ClusterId": "300412370207407505",
        "InfoId": "",
        "NumberOfCitations": "49",
        "NumberOfVersions": "",
        "PDFLink": "http://willamette.edu/~levenick/cs448/goNature.pdf",
        "PDFSource": "willamette.edu",
        "Title": "Mastering the game of Go with deep neural networks and tree search",
        "URL": "http://www.nature.com/nature/journal/v529/n7587/full/nature16961.html",
        "Year": "2016"
    },

Patterns:

tittle: lack of link => #49
versions: ?csluterid=xxx request does not return the versions
pdf link: ?csluterid=xxx request does not return the pdf link
pdf source: ?csluterid=xxx request does not return the pdf source

Deal with this problems in #49 #66 #67


Allows MutatingAdmissionWebhook admission controller by default

@bsnchan @glestaris we had also discussed SecurityContextDeny [1] which is enabled by default in new GKE 1.9.x clusters. this seems like it's worth adding, even if it's done outside of this particular PR.
[1] https://kubernetes.io/docs/admin/admission-controllers/#securitycontextdeny

@jbayer The SecurityContextDeny is added at https://github.com/bsnchan/kubo-release/blob/master/jobs/kube-apiserver/templates/bin/kube_apiserver_ctl.erb#L76


Fails to build with --frozen although cache and Cargo.lock is up-to-date

Problem
I'm unable to build with --frozen flag although the dependencies are up-to-date for the bob project.
cc @MordechaiHadad (the author)
Also reported here: https://github.com/MordechaiHadad/bob/issues/153
Steps

git clone https://github.com/MordechaiHadad/bob && cd bob/
cargo fetch --locked --target "x86_64-unknown-linux-gnu"
cargo build --release --frozen

thread 'main' panicked at 'packages downloaded: failed to download `flate2 v1.0.27`

Caused by:
    attempting to make an HTTP request, but --frozen was specified', src/cargo/ops/cargo_compile/mod.rs:910:14
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Possible Solution(s)
If you remove the --frozen flag, build once and repeat the process, then it works magically.
Notes
I don't know this is an error specific to the bob project but it is reproducible so I thought it would be better to report this to cargo directly.
Another thing to note, this is not a flate2 specific error since I got errors related to other crates as well:
thread 'main' panicked at 'packages downloaded: failed to download `tar v0.4.40`

Caused by:
    attempting to make an HTTP request, but --frozen was specified', src/cargo/ops/cargo_compile/mod.rs:908:14
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Version
cargo 1.72.0-nightly (5b377cece 2023-06-30)
release: 1.72.0-nightly
commit-hash: 5b377cece0e0dd0af686cf53ce4637d5d85c2a10
commit-date: 2023-06-30
host: x86_64-unknown-linux-gnu
libgit2: 1.6.4 (sys:0.17.2 vendored)
libcurl: 8.1.2-DEV (sys:0.4.63+curl-8.1.2 vendored ssl:OpenSSL/1.1.1u)
ssl: OpenSSL 1.1.1u  30 May 2023
os: Arch Linux Rolling Release [64-bit]

To add to this:
This also fails on cargo 1.65.0 (4bc8f24d3 2022-10-20) on Arch Linux
But runs successfully when running the same commands(changing to ("x86_64-pc-windows-msvc")
Dont have any info on this regarding other linux distros or macOS

Could you also try running cargo build with --target "x86_64-unknown-linux-gnu"?

Running cargo build --target "x86_64-unknown-linux-gnu" works just fine for me.

I dunno why this works on windows without any issue.

Sorry I was on my phone. Now it looks like having the same root cause as https://github.com/rust-lang/cargo/issues/11352.

You are right, flate2 is a MacOS dependency defined here: https://github.com/MordechaiHadad/bob/blob/master/Cargo.toml#L79
But it is being downloaded during build on Linux:
thread 'main' panicked at 'packages downloaded: failed to download `flate2 v1.0.27`

yeah exactly and winreg is a windows dependency

So is there a workaround/fix for this issue? @weihanglo

I guess no. #11352 is still open. The only workaround I am aware of is avoiding platform filtering when running cargo fetch.
I'll close this and let's discuss in #11352. Thank you for the report anyway!


Auth cleanups

Builds on @m4dc4p's work on #739, which very importantly allows hashed passwords for basic auth.  That's the star of this show.
More refactoring for consistency, as described in b22a8f6.

/cc @reactormonk, who has done a lot with auth and is agitating for an 0.15 release

LGTM

Current coverage is 62.34% (diff: 100%)

Merging #763 into master will increase coverage by 62.34%

@@           master       #763   diff @@
========================================
  Files         210        210
  Lines         397       4427   +4030
  Methods         0       3968   +3968
  Messages        0          0
  Branches       14        438    +424
========================================
+ Hits            0       2760   +2760
- Misses        397       1667   +1270
  Partials        0          0

Powered by Codecov. Last update 720d2b7...9caf417

Great work, thanks for merging. Much improved from my initial version!


Converting GalaxyExplorer from a D3D app to a XAML based app

This updates the project file to a base XAML application instead of a base D3D application.  Future changes to input and menuing will require XAML features on non-HoloLens UAP platforms.

Hi @abegun, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla.microsoft.com.

TTYL, MSBOT;


Bugs resolved  Like Colour toggle feature implemented

Hey i have solved the bug @narayan954
Now you can merge the PR

Thanks! it works fine


Define files in _targets.R better

Changes the way data files are tracked by moving the fs::dir_ls() bit out of the data reading functions and putting it a step earlier in the tar_file() targets.  This makes it easier to programmatically figure out which data files are actually being used in the pipeline.  Also includes a script to sync those files to a jetstream2 mounted volume which could be adapted for other remote machines (HPC, etc.)

Still can't get the report to render with the pipeline, but I'll debug that separately


CPR-321 Tweak search to ensure searching on populated fields

Can we do anything with that big test to show that this will reduce the number of matches?

Can we do anything with that big test to show that this will reduce the number of matches?
It won't show any changes as we create the exactly the same person... we would have to generate loads of different people then try search


[SPARK-36270][BUILD][3.1] Change memory settings for enabling GA

What changes were proposed in this pull request?

Trying to adjust build memory settings and serial execution to re-enable GA.
Why are the changes needed?

GA tests are failed recently due to return code 137. We need to adjust build settings to make GA work.
Does this PR introduce any user-facing change?

No, dev only.
How was this patch tested?

GA

cc @dongjoon-hyun @HyukjinKwon @gengliangwang

Test build #141574 has started for PR 33501 at commit e33be0e.

Test build #141577 has started for PR 33501 at commit 6177701.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46094/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46094/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/46094/

Test build #141584 has started for PR 33501 at commit f826d01.

Test build #141577 has finished for PR 33501 at commit 6177701.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test build #141574 has finished for PR 33501 at commit e33be0e.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46101/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/141577/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/141574/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46101/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/46101/

Test build #141584 has finished for PR 33501 at commit f826d01.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/141584/

Thanks. GA, Jenkins are passed. Merging to 3.1.


Hosting on a different platform.

Hi, I was wondering is it possible to host Nadeko bot on Raspbian? If so could I please have a few pointers on how to do so. I am new to the whole raspberry pi thing and I'm not exactly sure what I'm doing. BTW I have a Pi 3 so 4 cores, 1.2gh, 64-bit, 1gb ram. Help would be awesome!

http://nadekobot.readthedocs.io/en/latest/guides/Docker Guide/
Try this 👍

Thanks! I'll try it and see if it works.

Writing back again. I have been following all the steps to install docker on my pi but I have ran into an issue. I have updated my apt repository and now I'm onto Installing docker. The first step (updating the apt package index) worked fine but when I go to install docker I get errors like this - docker.service failed... See "bla bla bla" for details...
Error processing package docker-engine and so on. Please do not redirect me to the docker forums as they are no help because 1. When you search up the exact term it comes up with nothing. 2. I can't really wait a week for a reply and I know you guys are nice and fast when it comes to that cause you're all awesome. BTW as you can see a normal linux user could figure this out but I'm new.

Is you hardware supported? https://blogs.msdn.microsoft.com/dotnet/2016/07/15/net-core-roadmap/

https://github.com/dotnet/core/blob/master/samples/RaspberryPiInstructions.md you can use this to figure out how to setup dotnet and then just follow the linux guide afterwards.
Officially you can't run nadeko on rpi, but you can try

oh ok, thanks.


MSO_CONNECTOR_TYPE枚举中有直线和曲线连接器，缺少带箭头的直线和曲线连接器

如何在ppt中画出带箭头和双箭头的连接器，求助！！！！！！！！！！

Translation of title:
There are line and curve connectors in the enumeration, and line and curve connectors with arrows are missing


The model layer (MVC) should not throw WebException with HTTP Status code 404.

The current implementation works neither for POST nor GET. POST could mean that the validation failed somehow. For example, the user is trying to create a table with an owner that doesn't exist. In the API we declare BAD_REQUEST 400 but we return NOT_FOUND 404. GET could mean that the entity has an owner that must exist that it is not found because of an inconsistency in the database. Therefore the Status code should be 500 and not 404.

Current version
  default T findEntityById(UUID id, Include include) throws IOException {
    Class<T> clz = getEntityClass();
    String json = findById(getTableName(), id.toString(), toBoolean(include));
    T entity = null;
    if (json != null) {
      entity = JsonUtils.readValue(json, clz);
    }
    if (entity == null) {
      String entityName = Entity.getEntityNameFromClass(clz);
      throw EntityNotFoundException.byMessage(CatalogExceptionMessage.entityNotFound(entityName, id));
    }
    return entity;
  }

Proposed version. Don't throw WebException from the model layer but delegate it to the control layer.
  default T findEntityByIdOrNull(UUID id, Include include) {
    Class<T> clz = getEntityClass();
    String json = findById(getTableName(), id.toString(), toBoolean(include));
    T entity = null;
    if (json != null) {
      try {
        entity = JsonUtils.readValue(json, clz);
      } catch (IOException e) {
        throw DeserializationException.message(
            String.format("Error in deserializing entity %s in table %s with class %s", id, getTableName(), clz), e);
      }
    }
    return entity;
  }

We could use Java Optional<T> if we want. The IOException is unrecoverable because it means that the database is again corrupted or the user didn't run the migration before upgrading and there is no point in bubbling up the checked exception. Better to catch it and throw an unchecked exception with Status code 500. We could use a different strategy with LIST where we don't want to 500 the request if only one entity is corrupted in the database.
Fixing this and other inconsistencies will make our API consistent with the JSONSchema contract, remove some duplicated code that we have accumulated so far, and make the application more robust to errors.
@sureshms @harshach @pmbrull @mithmatt

The current implementation works neither for POST nor GET.
It would be good to describe issues instead of making sweeping statements. Please describe current behavior in APIs that could be improved.

Let's avoid lengthy names that capture implementation and interface details, such as findEntityByIdOrNull. Also note that there is a variant of method findById which returns you JSON representation of the entity that could be null when not found and that does not throw Exception. Where necessary, this could be used to return the appropriate HTTP response code.

I think we could improve the API in this test.
https://github.com/open-metadata/OpenMetadata/blob/89d029355dfff66b556b2a21801f878adf6a5bd0/catalog-rest-service/src/test/java/org/openmetadata/catalog/resources/EntityResourceTest.java#L607-L617
Instead of returning 404, we should return 400, or we should change our contract in all Resources.
https://github.com/open-metadata/OpenMetadata/blob/89d029355dfff66b556b2a21801f878adf6a5bd0/catalog-rest-service/src/main/java/org/openmetadata/catalog/resources/databases/TableResource.java#L288-L306
I agree with the answer in StackOverflow
findEntityByIdOrNull is temporary to avoid clashes with the old method. When/if I completely replace the old method with the new one, I will also rename it to make it shorter.
findById makes sense for the validation of the owner. I'll check it out.


Running Podman with a nonexistent hooks dir is nonfatal

Even explicitly defined hooks directories may not exist under some circumstances. It's not worth a hard-fail if we hit an ENOENT in these cases.
Fixes a BZ reported against Rawhide - Podman 1.5.0 and above don't have a hard dependency on any OCI hook, so the hooks directory won't be created on a default install and Podman will fail.

Ref: https://bugzilla.redhat.com/show_bug.cgi?id=1740807

/retest

/retest

LGTM

/rerun

LGTM assuming happy tests

/retest

/lgtm


Move renovate config to .github/renovate.json5

Codecov Report
Patch and project coverage have no change.

Comparison is base (6743a67) 96.12% compared to head (ac892cc) 96.12%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #94   +/-   ##
=======================================
  Coverage   96.12%   96.12%
=======================================
  Files           6        6
  Lines         129      129
  Branches        7        7
=======================================
  Hits          124      124
  Misses          2        2
  Partials        3        3

Flag
Coverage Δ

unittests
96.12% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


possible bugs in RUNTIME_VARS by calling get_env function

Description
A clear and concise description of the issue.
The input sequence used for get_env is wrong in RUNTIME_VARS
Scope and Impact
A description of how other users might be impacted by this issue.
RUNTIME_VARS.F code
Solution
Is there a known solution for the issue? If so, how/when will it be shared with other users.
yes, switch the 1st two input sequence for get_env function in RANTIME_VARS code
Additional context
Add any other context about the problem here.
In the RUNTIME_VAR.F code, it calls 'get_env' function. The original get_env function has a character inputs as it 2nd inputs (it takes 4 inputs in total). But in 'get desired wavelengths for diagnostic output' code. it shows 'CALL GET_ENV('NWAVE_PHOTDIAG',NWAVE,WAVE_ENV,VARDEV). I think we need to switch the first two input sequence, making 'NWAVE_PHOTDIAG' the 2nd input.

Add any other context about the problem here.
In the RUNTIME_VAR.F code, it calls 'get_env' function. The original get_env function has a character inputs as it 2nd inputs (it takes 4 inputs in total). But in 'get desired wavelengths for diagnostic output' code. it shows 'CALL GET_ENV('NWAVE_PHOTDIAG',NWAVE,WAVE_ENV,VARDEV). I think we need to switch the first two input sequence, making 'NWAVE_PHOTDIAG' the 2nd input.

In get_env_mod.f90, get_env is defined as a module procedure.
The compiler determines which of those module procedures to call based on the argument types.
When GET_ENV is called with arguments ('NWAVE_PHOTDIAG', NWAVE, WAVE_ENV, VARDEV), the specific routine that is selected is get_envlist. That routine's arguments are (character, integer, character array, integer), which match the arguments used in the call vector.

If the code is not compiling for you, one alternative is to edit get_env_mod.f90 to remove get_envlist from the get_env module procedure. Then edit RUNTIME_VARS.F to explicitly call get_envlist for all of these cases:
'NPCOL_NPROW'
'AVG_CONC_SPCS'
'CONC_SPCS'
'ACONC_BLEV_ELEV'
'CONC_BLEV_ELEV'
'AISAM_BLEV_ELEV'
'ISAM_BLEV_ELEV'
'NWAVE_PHOTDIAG'
'PA_BCOL_ECOL'
'PA_BROW_EROW'
'PA_BLEV_ELEV'

@btang1 thanks for your inquiry. @cgnolte's explanation is consistent with my findings. Additionally, I did a test compiling CMAQv5.4 with the GNU compiler suite disabling optimizations and enabling "debug" flags (e.g., -g -ftraceback -fcheck=all -ffpe-trap...) while toggling the PHOTDIAG file on and providing various combinations of "setenv NWAVE_PHOTDIAG".
All simulations compiled and ran successfully as intended.
So at this time we are going to close this issue. However, may we also ask that you please post additional questions and issues about CMAQ on our Users' Forum: https://forum.cmascenter.org/.
We use this forum for CMAQ questions because it has search and tagging features that make it easier for users to find answers to their questions and get connected to the appropriate developer.


Token with invalid audience should result in a 401 error, instead of a 403

According to the RFC, if the token audience validation fails, the token should be fully rejected, i.e., leading to a 401 HTTP response status, instead of the 403 that is returned currently.

If this is still a problem, please open a new issue in the main XRootD repository, where the scitokens plugin is being maintained. This repository is no longer active. Thank you!


test(Spring CodeGen): Set up golden file tests for spring class composers

In this PR:

Separates SpringPropertiesClassComposerTest from SpringAutoConfigClassComposerTest
Replaces string comparisons with golden file testing

Todos:

[ ] #1045 should be merged first; resolve conflicts and update golden files in the PR once that happens

@zhumin8 Two open questions for this PR:

Right now the golden files for SpringComposerTest vs. the individual class composer tests only differ in the apache license. Would we want to keep these as separate files (vs. combine and reuse), given the additional testing for SpringComposer steps that we anticipate adding in the future?

I’ve split out SpringPropertiesClassComposerTest from SpringAutoConfigClassComposerTest, but noticed that the same chunk of setup code is shared and repeated. This setup seems to be replaceable by calling TestProtoLoader:

    this.context = TestProtoLoader.instance().parseShowcaseEcho();
    this.echoProtoService = this.context.services().get(0);

Was there a consideration for keeping the explicit setup steps here (perhaps for things that’d need customizing or flexibility in the future?) If not, I'll make the switch over in this PR.

@zhumin8 Thank you for the review! A quick summary of follow-up changes to the PR:

Replaced the tests’ setup code (as discussed above)
Moved tests and goldens into a composer subdirectory to align with package structure of the source code
Tried changing the SpringComposer tests to reuse golden files from the individual class composer tests, but the extra setup felt more complicated than expected. Upon second thought, having a test use but not update the golden files (or having two different tests update the same ones) could get confusing, so I reverted back to separate files and just gave them better names. We can revisit this if needed later.


PageView inside PageView, child doesn't respond until parent's scrolling is stopped

I have a PageView.builder with scrollDirection: Axis.vertical. Every child of it is PageView with scrollDirection: Axis.horizontal.
Everything's working just fine, a user can scroll vertically and horizintally using swipes.
The problem is: after scrolling vertically a user must wait until the scrolling animation is fully stopped before being able to scroll horizontally.
Gif
I've tried every possible solution (including custom GestureDetector and custom ScrollPhysics, still can't deal with it. Any help or hint would've greatly appreciated.

@intraector
Your question seems to be better suited for StackOver flow. Please see https://flutter.dev/community for resources and if you need help with your code, please see https://www.reddit.com/r/flutterhelp/
Closing, as this isn't an issue with Flutter itself. If you disagree, please write in the comments and I will reopen it.
Thank you


Creating the scheduled task

Windows server 2016 and Version "win-acme.v<IP_ADDRESS>"
"O"> "More options ..."
"T"> "(Re) create scheduled task"
The planned task is well created but there are in the arguments "--renew --baseuri" https://acme-v01.api.letsencrypt.org/ "While there should be https: // acme-v02 .api.letsencrypt.org.
Sorry for my bad English.

Thanks, that bug will be fixed in the next release!


TensorBoard say Launching TensorBoard..., but nothing show

@GF-Huang
please open this issue in the tensorboard repo, and move this to closed status.


Automatic submission form opening a new PR fails if project exists already

The current submission Google Form creates a new PR upon submission, but it fails if the project already exists. The script as documented here needs to check if the file exists first.

Duplicate of #84


Lobsters bench

Benchmark based on Lobsters Rails app. We generate a fairly wide variety of routes.
Opening a draft PR to start getting more feedback.

Worth mentioning: this is still on Rails 7.0.6. I'll start updating to use head-of-main Rails. I don't expect big changes, but I'll test after.

Oof. Yeah, okay, updating to edge Rails is going to take some doing. There are a lot of config options still using old settings.

I just tried running harness-continuous on the benchmark and the per-iteration time seems good. Well done 👍

Some recent SFR stats for comparison:
compiled_iseq_count:          12,931
inline_code_size:         26,793,782
outlined_code_size:       23,678,377

So SFR has less iseqs compiled but more code generated (maybe because it has more polymorphism). I think this benchmark is large enough to be interesting though 👍

Benchmark looks to be in good shape. Is it working with rails edge now?

Is it working with rails edge now?

Yes, however it's still using 7.0 defaults, I'll PR something quick.

I took the liberty to push 554484a

Thank you for the fix Jean.
It's good to have some GC time. Peter and Matt can make use of this benchmark as well 👍 🙂

Hum, another small notes, we said we'd like to have some megamorphic calls.
Looking at a heap dump I see a single class that reached SHAPE_TOO_COMPLEX.
We may want to mess with at least a model or two. Not sure in which capacity though.

Hum, another small notes, we said we'd like to have some megamorphic calls.
Looking at a heap dump I see a single class that reached SHAPE_TOO_COMPLEX.
We may want to mess with at least a model or two. Not sure in which capacity though.

Hum, another small notes, we said we'd like to have some megamorphic calls.
Looking at a heap dump I see a single class that reached SHAPE_TOO_COMPLEX.
We may want to mess with at least a model or two. Not sure in which capacity though.

Cool, so then this is mostly all finished up. But I haven't tried the switch to an in-mem DB yet. So I'll try that next.

So this does the trick:
diff --git a/benchmarks/lobsters/benchmark.rb b/benchmarks/lobsters/benchmark.rb
index bceb050..0b957b5 100644
--- a/benchmarks/lobsters/benchmark.rb
+++ b/benchmarks/lobsters/benchmark.rb
@@ -9,6 +9,18 @@ use_gemfile extra_setup_cmd: "bin/rails db:drop db:create && sqlite3 db/producti
 require_relative 'config/environment'
 require_relative "route_generator"

+module Bench
+  extend self
+
+  def make_complex(klass)
+    20.times do |i|
+      klass.allocate.instance_variable_set("@a#{i}", 1)
+    end
+  end
+end
+
+Bench.make_complex(Comment)
+
 app = Rails.application
 generator = RouteGenerator.new(app)
 generator.do_login # We want to be logged in for all generated requests

$ grep '"variation_count":8' /tmp/lobsters.heap
{"address":"0x1080f67d0", "type":"CLASS", "shape_id":3319, "slot_size":160, "class":"0x1080f6730", "variation_count":8, "superclass":"0x1080f4f70", "name":"Comment", "references":[

So this does the trick:
diff --git a/benchmarks/lobsters/benchmark.rb b/benchmarks/lobsters/benchmark.rb
index bceb050..0b957b5 100644
--- a/benchmarks/lobsters/benchmark.rb
+++ b/benchmarks/lobsters/benchmark.rb
@@ -9,6 +9,18 @@ use_gemfile extra_setup_cmd: "bin/rails db:drop db:create && sqlite3 db/producti
 require_relative 'config/environment'
 require_relative "route_generator"

+module Bench
+  extend self
+
+  def make_complex(klass)
+    20.times do |i|
+      klass.allocate.instance_variable_set("@a#{i}", 1)
+    end
+  end
+end
+
+Bench.make_complex(Comment)
+
 app = Rails.application
 generator = RouteGenerator.new(app)
 generator.do_login # We want to be logged in for all generated requests

$ grep '"variation_count":8' /tmp/lobsters.heap
{"address":"0x1080f67d0", "type":"CLASS", "shape_id":3319, "slot_size":160, "class":"0x1080f6730", "variation_count":8, "superclass":"0x1080f4f70", "name":"Comment", "references":[

But what is this change doing? Just randomly creating a class with many ivars, that won't necessarily be accessed much?

But what is this change doing?

It just creates a bunch of shapes for the Comment class, so future instances will directly transition to SHAPE_TOO_COMPLEX (id: 11).
You are right though that it won't create megamorphic call sites. It will only force ivar access on the instances of that class to use the fallback (essentially the pre-shape codepath).
So maybe it's not valuable.
Creating megamorphic call site should be doable, it's essentially the same idea, but then we'd need to call a few methods on these instances. Let me try that.

re megamorphic calls, what about this?
class A
  def initialize(id)
    @id = id
  end

  def id
    @id + 2
    other
  end

  def other
    @id
  end
end

module Bench
  extend self

  def make_megamorphic(obj)
    50.times do |i|
      copy = obj.dup
      copy.singleton_class
      yield copy
    end
  end
end

Bench.make_megamorphic(A.new(1)) { |o| o.id; o.other }

a = A.new(32)

10_000.times do
  a.id
end

num_send:                    211,171
num_send_known_class:              0 ( 0.0%)
num_send_polymorphic:        191,035 (90.5%)
num_send_megamorphic:         10,024 ( 4.7%)
num_send_dynamic:             10,024 ( 4.7%)

Similar startup delay, around 6sec, on benchmark machine w/ in-mem. Benchmark runs a little faster in YJIT and has a little more YJIT speedup, slightly higher mem usage. This is all w/ default (few) iterations, so just checking very quickly.
Here's latest with checked-in production.sqlite3 file:
RSS: 214.8MiB
Average of last 10, non-warmup iters: 821ms
Total time spent benchmarking: 57s

interp: ruby 3.3.0dev (2023-08-08T23:46:12Z :detached: 1b0da1e623) [x86_64-linux]
yjit: ruby 3.3.0dev (2023-08-08T23:46:12Z :detached: 1b0da1e623) +YJIT [x86_64-linux]

--------  -----------  ----------  ---------  ----------  ------------  -----------
bench     interp (ms)  stddev (%)  yjit (ms)  stddev (%)  yjit 1st itr  interp/yjit
lobsters  1109.4       0.8         821.7      5.3         0.50          1.35
--------  -----------  ----------  ---------  ----------  ------------  -----------
Legend:
- yjit 1st itr: ratio of interp/yjit time for the first benchmarking iteration.
- interp/yjit: ratio of interp/yjit time. Higher is better for yjit. Above 1 represents a speedup.

And here's latest with in-mem DB:
RSS: 256.8MiB
Average of last 10, non-warmup iters: 785ms
Total time spent benchmarking: 63s

interp: ruby 3.3.0dev (2023-08-08T23:46:12Z :detached: 1b0da1e623) [x86_64-linux]
yjit: ruby 3.3.0dev (2023-08-08T23:46:12Z :detached: 1b0da1e623) +YJIT [x86_64-linux]

--------  -----------  ----------  ---------  ----------  ------------  -----------
bench     interp (ms)  stddev (%)  yjit (ms)  stddev (%)  yjit 1st itr  interp/yjit
lobsters  1118.3       2.9         785.7      5.3         0.53          1.42
--------  -----------  ----------  ---------  ----------  ------------  -----------
Legend:
- yjit 1st itr: ratio of interp/yjit time for the first benchmarking iteration.
- interp/yjit: ratio of interp/yjit time. Higher is better for yjit. Above 1 represents a speedup.

RSS is 256.8 MiB with in-memory, 214.8 MiB with checked-in file. I could also run this a few more times to get a feel for how it changes.

Yeah, using the Backup operation is definitely faster - 2-3 second startup delay instead of 6.


Fixed a regression that broke FindSymbols for CSX

This PR fixes a regression introduced in https://github.com/OmniSharp/omnisharp-roslyn/pull/1282 that broke symbol search for CSX.
I also enabled the FindSymbolsFacts to specifically run twice - once for both regular C# and once for CSX to prevent this in the future (we have same pattern on most tests, but it wasn't there on this one though).
This is quite critical so it would be great to merge this ASAP.

I remember mentioning this in the original PR here https://github.com/OmniSharp/omnisharp-roslyn/pull/1282#discussion_r215375984

ah I was on holidays then so it slipped past me 😄

@filipw re: shipping this--A big focus for the C# extension in 17.0 has been working with the Asp.NET team to ship an initial Razor experience in the extension. This has involved a lot of validation based on the 1.32.6 release of OmniSharp. Since 1.32.6, there have been other changes unrelated to this one, so we'd probably need to redo some of our validation if we inserted 1.32.7 to the extension. We first shipped the CSX find symbols regression in 1.16.0 in September, so it has been this way for some time. I would prefer to merge your fix and recommend that users who need it set the "omnisharp.version" option to "latest". We can then insert 1.32.7 into 17.1 and include it in betas. Thoughts?

thanks, that's OK, let's do it that way
After 1.17.0 ships, would be great if you could publish the 1.17.1-beta1 fairly quickly though, so that there is a concrete extension build that can be installed as a workaround.
The "latest" way works in the immediate term (as soon as this PR is merged) but longer term is a bit invasive, plus we had broken builds on master before 😀

I will merge it then 👍


Update requests should not happen with every run

Currently every run of resin-cli produces this for me:

   ╭──────────────────────────────────────╮
   │                                      │
   │   Update available 5.7.1 → 5.7.2     │
   │   Run npm i -g resin-cli to update   │
   │                                      │
   ╰──────────────────────────────────────╯

It would be nice if it only did it once for each version or once each few weeks etc.

Interestingly, it used to do that, and we actually do this on purpose instead: https://github.com/resin-io/resin-cli/pull/325.
I kind of agree though - it's annoying when you're using the cli a lot and it keeps coming up. Thoughts @jviotti?

There is an updateCheckInterval option for update-notifier (https://www.npmjs.com/package/update-notifier)

I personally think that it would be better to do it at most once a day, happy to PR this in if everyone is in agreement.

It sounds great to me :+1:

:+1:

@CameronDiver hey still interested doing this?

Ah sorry this slipped through the cracks! Yeah I'll do this today. Thanks for reminding me.

Fixed ages ago


New timeline?

The goal is for all auth done by google-apis-ruby-client to be performed by this library. I.e, eventually google-apis-ruby-client will just take a dependency on this library. This update is a work in progress, but should be completed by Q2 2015.

It looks like this never happened?

spec.add_runtime_dependency 'googleauth', '~> 0.5' is in the gem spec so it looks like the readme is just out of date.


shortcut for vscode

I would like to replace the shortcut for vscode to be ctrl+super+c and for the inline ask to be super+c

Please, see corresponding keyboard shortcut configuration documentation of your OS and VS Code.


No module named 'langchain.transformers'

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangChain documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangChain rather than my code.
[X] The bug is not resolved by updating to the latest stable version of LangChain (or the specific integration package).

Example Code
I am trying to use LLMGraphTransformer
Despite upgrading everything still facing this issue
`from langchain.transformers import LLMGraphTransformer
ModuleNotFoundError                       Traceback (most recent call last)
Cell In[6], line 2
1 from langchain.llms import OpenAI
----> 2 from langchain.transformers import LLMGraphTransformer
3 import getpass
4 import os
ModuleNotFoundError: No module named 'langchain.transformers'`
Error Message and Stack Trace (if applicable)
No response
Description
I am trying to use LLMGraphTransformer
Despite upgrading everything still facing this issue
`from langchain.transformers import LLMGraphTransformer
ModuleNotFoundError                       Traceback (most recent call last)
Cell In[6], line 2
1 from langchain.llms import OpenAI
----> 2 from langchain.transformers import LLMGraphTransformer
3 import getpass
4 import os
ModuleNotFoundError: No module named 'langchain.transformers'`
System Info
I am trying to use LLMGraphTransformer
Despite upgrading everything still facing this issue
`from langchain.transformers import LLMGraphTransformer
ModuleNotFoundError                       Traceback (most recent call last)
Cell In[6], line 2
1 from langchain.llms import OpenAI
----> 2 from langchain.transformers import LLMGraphTransformer
3 import getpass
4 import os
ModuleNotFoundError: No module named 'langchain.transformers'`

Hi @mustangs0786, I assume you read some docs about an earlier version. In v0.2:
from langchain_experimental.graph_transformers import LLMGraphTransformer, see https://python.langchain.com/v0.2/docs/how_to/graph_constructing/#llm-graph-transformer

Using Python 3.11.9 (ubuntu 22.04), with below packages (pip install langchain-experimental), there are no errors with the line I gave above:
from langchain_experimental.graph_transformers import LLMGraphTransformer
langchain                0.2.8
langchain-community      0.2.7
langchain-core           0.2.19
langchain-experimental   0.0.62
langchain-text-splitters 0.2.2


Changes for track 2 Key Client

This PR adds a layer over autorest-generated models.
KeyAttributes exposes a key's common attributes but not its jsonWebKey (key/key_material). Most client methods return this.
Key is KeyAttributes plus a jsonWebKey
DeletedKey is KeyAttributes plus deletion/recovery/purge information
TODO's left:
wrap_key, unwrap_key, import_key.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Codecov Report

Merging #5184 into keyvault-proto will increase coverage by 0.05%.
The diff coverage is 96.33%.

@@                Coverage Diff                 @@
##           keyvault-proto    #5184      +/-   ##
==================================================
+ Coverage           48.71%   48.77%   +0.05%
==================================================
  Files                6144     6157      +13
  Lines              169044   169232     +188
==================================================
+ Hits                82356    82541     +185
- Misses              86688    86691       +3

Impacted Files
Coverage Δ

azure-keyvault/azure/keyvault/_internal.py
76% <ø> (ø)
:arrow_up:

...eyvault/azure/keyvault/_generated/v7_0/__init__.py
100% <ø> (ø)
:arrow_up:

...yvault/_generated/v7_0/models/backup_key_result.py
100% <100%> (ø)

...lt/_generated/v7_0/models/key_create_parameters.py
100% <100%> (ø)

.../azure/keyvault/_generated/v7_0/models/key_item.py
100% <100%> (ø)

...t/_generated/v7_0/models/key_vault_client_enums.py
100% <100%> (ø)

.../azure/keyvault/_generated/v7_0/models/__init__.py
100% <100%> (ø)
:arrow_up:

...vault/_generated/v7_0/models/deleted_key_bundle.py
100% <100%> (ø)

...re/keyvault/_generated/v7_0/models/json_web_key.py
100% <100%> (ø)

azure-keyvault/azure/keyvault/keys/__init__.py
100% <100%> (ø)
:arrow_up:

... and 23 more

Continue to review full report at Codecov.

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


Best way to handle styling

In v2 components I have extended the render props methods of styling certain components. This works however you do have to do a work around with tailwind at the moment, by making all duplicate styles important that you want to appear.
Example - Button:
To style this button we can use the render props:
import { Button } from "@/components/ui/button"

export function ButtonDemo() {
  return <Button className={({ isHovered }) => isHovered ? "!bg-red-600" : ""}>Button</Button>
}

Since the default styles however have a data-[hovered]:bg-primary/90. The default styles will be applied, unless as above we make the class important !
You could get around this by allowing the correct merge behaviour by changing the string too data-[hovered]:bg-red-600 but it seems like bad DX to check for hovering twice.
My plan, to enable all forms of styling to have good DX in the future is change all defaults to use the render prop methods, this way tailwind merge should correctly apply passed in classNames.
Render props docs

This library looks amazing! Just wondering if you've considered using the official Tailwind plugin to style the components? I do understand that once we do that it means all user would need to install the plugin as well, though.

This library looks amazing! Just wondering if you've considered using the official Tailwind plugin to style the components? I do understand that once we do that it means all user would need to install the plugin as well, though.

Thanks for the kind words!
Yes I did consider using the plugin but as you mentioned, would require an extra install step for users, which is ultimately why I elected not to use it. I wanted installation to be as close to shadcn as possible. I also personally prefer to use as little plugins as possible in tailwind so styles are easily copy and paste-able, and you can easily see how to modify them if you had your own headless components.


Print out enabled handlers on boot

Right now it is not clear which handlers are enabled.

Fixed by #55.


ExtractSummaryActions should be ExtractiveSummarizeAction

In the C# example, the ExtractSummaryActions should be replaced with ExtractiveSummarizeAction for Azure.AI.TextAnalytics v5.3.0

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

ID: a08dd9c5-27a8-eba6-caeb-8f049e60c255
Version Independent ID: 5f7efa46-5862-3ee8-f729-3f1ac584e524
Content: Quickstart: Use Document Summarization - Azure AI services
Content Source: articles/ai-services/language-service/summarization/quickstart.md
Service: azure-ai-language
GitHub Login: @jboback
Microsoft Alias: jboback

@davecatt
Thanks for your feedback! We will investigate and update as appropriate.

@davecatt
Thank you for bringing this to our attention! We've initiated a pull request (PR) to address this issue. Once the author reviews the changes, they will be merged, and the updates should go live shortly. Your diligence is much appreciated!


chunkwm crashed by NULL pointer dereferecence

Here is my stack trace

window is a NULL pointer!

Look into BeginFloatingWindow function, it seems be the case that GetWindowByID or GetFocuedWindow is return NULL pointer.
So my suggestion is to check if window is NULL at line 20  in the above picture. Or we also want to check NULL pointer at the AXLibHasFlags function to prevent possibly other crashes.

I'd rather try to figure out why the function would return null in the first place - figuring out what the actual problem is, instead of simply guarding for null and call that a fix.


Incremental Gulp Builds

If a source file that is a dependency of a particular output has not changed, then the output should not be regenerated.

If we do our jobs properly we will basically port the functionality nailed down in the 1980's with Make to gulp. What is old is new again.

Some previous discussion here: https://github.com/roots/sage/pull/1433#issuecomment-97535650
and here: https://discourse.roots.io/t/need-to-speed-up-scripts-task/3727/2?u=austin

Alrighty guys I have started work on this. The first step, of course, is to build a benchmark suite to see if my changes are actually making a measurable impact on build times. You can view the benchmark suite over here. Below is the output of we currently stand as far as build times. On my machine:

I'm seeing as long as 10 seconds for a barebones Sage install. This sounds about right for an initial build. However, my goal is to significantly cut down on the repeat build times. You should not have to wait 10 seconds for each build if the output is going to be nearly the same. Make got this right almost 40 years ago, I don't see why we can't as well.
The output of the initial benchmark follows.
Debug Information
node version	v0.12.4
npm version	2.10.1

Running Setup

cleaning tmp dir
creating directory before
cloning sage

before is now at 12fe0473683553f2adf7652076b198ce122c5cc1
installing bower modules
installing npm modules. This could take a while.....

<EMAIL_ADDRESS>/Users/austinpray/DEV/opensauce/sageIncrementalTests/.tmp/before
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>

creating directory after
cloning sage

after is now at 12fe0473683553f2adf7652076b198ce122c5cc1
installing bower modules
installing npm modules. This could take a while.....

<EMAIL_ADDRESS>/Users/austinpray/DEV/opensauce/sageIncrementalTests/.tmp/after
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>

Running Comparisons
These are the variants of the trials to be run:

barebones: this is what comes with the repo by default.
angular.js: install angular via bower.
kitchen sink: install a whole bunch of stuff. angular angular-ui-router lodash d3 animate.css moment

Profiling before

Running variant “barebones”
Running variant “angular.js”
Running variant “kitchen sink”

Profiling after

Running variant “barebones”
Running variant “angular.js”
Running variant “kitchen sink”

trial
variation
time (seconds)
commit
command

before
barebones
14.11
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

before
barebones
15.16
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

before
barebones
13.36
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

before
barebones
13.90
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

before
barebones
12.21
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

before
angular.js
17.95
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

before
angular.js
18.12
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

before
angular.js
21.44
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

before
angular.js
20.89
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

before
angular.js
20.28
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

before
kitchen sink
31.40
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

before
kitchen sink
33.75
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

before
kitchen sink
35.43
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

before
kitchen sink
45.27
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

before
kitchen sink
41.27
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

after
barebones
15.92
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

after
barebones
14.68
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

after
barebones
15.02
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

after
barebones
15.82
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

after
barebones
19.48
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

after
angular.js
28.21
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

after
angular.js
31.17
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

after
angular.js
30.51
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

after
angular.js
26.20
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

after
angular.js
26.99
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

after
kitchen sink
60.89
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

after
kitchen sink
46.83
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

after
kitchen sink
51.17
12fe0473683553f2adf7652076b198ce122c5cc1
gulp

after
kitchen sink
30.71
12fe0473683553f2adf7652076b198ce122c5cc1
gulp


Boundary treatment

Line 92 of tracker.py is
I = grid.atsea(X1, Y1)
shouldn't it be
I = grid.onland(X1, Y1)?

This works as supposed.
The old particle position is (X, Y) while (X1, Y1) is the candidate for the new particle position.
Line 92 is the final check, if the (X1, Y1) is at sea it becomes the new position.
If the position is on land, it does not move i.e. (X, Y) is retained as the new position.
In lines 77+ the opposite logic is used. If the new position is outside the grid, X1 is replaced by
the old position X. This is inconsistent coding and may be confusing. This will be cleaned up in the
next revision of the code.
Another issue is if this is the best way to handle the land boundary. I plan to include different options. For some applications, like pollution transport, it may be better to let the particle move onto land and become stranded.
Bjørn


docs: update and simplify all documentation

This PR attempts to:

[x] Removes usage of the icons on the sidebar.
[x] Simplifies the documentation a little at places.
[x] Re-structures the index page, allowing for expansion.
[x] Removes all the i18n version of docs, which are old and stale at this point.
[x] Updates the WSL guide for preparing the env on Windows.
[x] Removes the docker based setup which was unmaintained.

We will have a brand new way of contributing to i18n for docs once this PR has landed.

Note this PR only removes the docker based installation documentation. Will remove the actual files in a later PR if I do not see any objections.
Also, in interest of time, lets limit the scope of updates to the changes only. The verbiage can be improved in more PRs if needed.

@raisedadead I notice you are using console for the language of some triple backtick code sections.
This makes the code blue and the comments black.  If you used shell instead, it would something like below.  Notice the code is black and the comments are grey. I will leave it up to to you.

It doesn't matter at the moment, because of how docsify highlights things (or rather, doesn't).  It doesn't differentiate between the two:
Both shell and console look like this:

That said, people can still view things on GitHub and it does make a difference in that case.

The use of console was intentional to avoid any confusion. It renders without highlights on the docsify and that is the scope. We really can't do much for anyone using the docs on GitHub. We recommend them to reading it on the contributing site officially.

Is there a possibility of getting back the local setup of the app in docker containers? It was very convenient on having the development environment isolated from my local setup.

Hi @kostaslamo
Thanks for your feedback. The only reason we dropped support was because they weren't getting much love. However, it would not hurt to keep them as a separate guide (like our WSL setup).
I was wondering, would you be interested in adding those in a PR, since you have been using it?

Hello @raisedadead
I would be glad on creating a seperate guide for docker installation as i strongly believe having an app dockerized solves a lot of problems. I am a new contributor here so a little help for creating the doc would be much appreciated.

I am a new contributor here so a little help for creating the doc would be much appreciated.

More than happy to help. You can reach us on the places linked here: https://contribute.freecodecamp.org/#/FAQ?id=i-am-stuck-on-something-that-is-not-included-in-this-documentation


Implement more detailed device info

Codecov Report

Merging #2 into master will increase coverage by 27.19%.
The diff coverage is 95.16%.

@@             Coverage Diff             @@
##           master       #2       +/-   ##
===========================================
+ Coverage   45.73%   72.93%   +27.19%
===========================================
  Files          10       10
  Lines         223      484      +261
===========================================
+ Hits          102      353      +251
- Misses        121      131       +10

Impacted Files
Coverage Δ

Sources/DeviceModel.swift
0% <0%> (ø)
:arrow_up:

Sources/UIDeviceExtensions.swift
0% <0%> (ø)
:arrow_up:

Tests/IdentifierTests.swift
97% <100%> (+6.8%)
:arrow_up:

Sources/Identifier.swift
93.97% <93.15%> (-6.03%)
:arrow_down:

Continue to review full report at Codecov.

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


Force labels data type to be uint32

Due to upstream issue (https://github.com/napari/napari/issues/7327), the colormap of labels cannot be changed if their dtype is not uint32, which causes hideous error when assigning manual cluster IDs to uint16 labels in napari-clusters-plotter.
This PR is a workaround when the fix upstream is pending.

@ziw-liu , this partially works for me. Half the labels are allocated a cluster ID whereas half of them are zeros. Is this related to some issue with the tracking metadata itself?

I tested the same with the new predictions @alishbaimran generated and it works better. On annotating on the UMAP, the cluster id allocation excludes cells with partial bounding boxes at the boundary of the frame. This makes sense since those cells are not included in the analysis.

@Soorya19Pradeep @alishbaimran Can you provide a review? I'd like to deploy this fix soon.

Works for me!


Make logging cloud-friendly

Log statements are currently written to a file. If the bot is deployed to a VM instance, it will eventually run out of disk space.
Ideally, logs should be treated as event streams.  Also, it'd be nice to use pythons standard log library.

Logging does need more options. For the most part, stdout/stderr logging covers things like systemd and containers, but might not be ideal for  some setups.  I propose:

stdout is always on (see: Python's logging StreamHandler)
Optional configuration for a log handler mapped to Python's handlers. Examples:

simple for WatchedFileHandler
rotate_time for TimedRotatingFileHandler
rotate_size for RotatingFileHandler

Configuration could look something like:
[logging]
# simple | rotate_time | rotate_size
handler = rotate_size
filename = /path/to/logfile.log
max_bytes = 104857600
backups = 10


Support for new reddit share link

Describe the solution you'd like
Within the past couple of weeks, reddit seems to have made a new format for their share links.
Normally, when you click share -> copy link, you would get a link like the following:
https://www.reddit.com/r/space/comments/15llt1x/two_consecutive_solar_flares_send_potential/?ref=share&ref_source=link
However, on mobile, you now get links like the following:
https://reddit.com/r/space/s/skZgKbbMDq
The string after s/ changes every time you share the link, even if it is the same account on the same post.
When resolving this link, it takes you to the original share link except with a share_id= query on the end:
https://www.reddit.com/r/space/comments/15llt1x/two_consecutive_solar_flares_send_potential/?share_id=T-5Gge1AFaeZCVqp2sW_N
Support for using this new link would be helpful.
Describe alternatives you've considered
Currently, I have had to use requests to follow the new share link in order to get the original link from headers -> location in order to use praw/asyncpraw.
Additional context
No response

@Aaeeschylus  Could you please share the workaround that you tried with requests ?

@Aaeeschylus Could you please share the workaround that you tried with requests ?

requests.get(link, allow_redirects=False).headers["Location"]
Do note, it isn't 100% reliable. Sometimes you need to follow it multiple times before you get the real reddit link.

@Aaeeschylus Could you please share the workaround that you tried with requests ?

requests.get(link, allow_redirects=False).headers["Location"]
Do note, it isn't 100% reliable. Sometimes you need to follow it multiple times before you get the real reddit link.

Thanks for sharing this! I tried to run it a couple of times(in loop) but unfortunately it returns the same url back with just www added to the mobile link.

@Aaeeschylus Could you please share the workaround that you tried with requests ?

requests.get(link, allow_redirects=False).headers["Location"]
Do note, it isn't 100% reliable. Sometimes you need to follow it multiple times before you get the real reddit link.

Thanks for sharing this! I tried to run it a couple of times(in loop) but unfortunately it returns the same url back with just www added to the mobile link.
Edit: Inspired by your idea I found the solution to get the correct url always. We must specify Host in request header.
link = 'https://reddit.com/r/space/s/skZgKbbMDq'
h = {'Host': 'www.reddit.com'}
share_url = requests.get(link, headers=h, allow_redirects=False).headers['Location']

Yeah I would normally either run it multiple times until I got the correct link or just add www to the url. I didnt know about the header part so I will definitely try that if it gives the correct URL every time

Yes, reddit is still using these stupid new links.


query/api: properly pass downsampling param

As compact.ResolutionLevel{Raw,5m,1h} says the resolution levels are
expressed in milliseconds. Currently, parseDownsamplingParam() calls
parseDuration() and friends which express this value in nanoseconds.
Thus, we need to divide the value by 1000*1000 to have them in
milliseconds.
Add test cases to check all of this.

this lgtm, but we should note this change in the changelog

Wow

I think we should close like at least 3 tickets mentioning that choosing downsampling does not always work ;p

Great job @GiedriusS

This is wrong change IMO - the time is being divided to match miliseconds further down in stack ): Also I did not realize that we are trying to somehow adjust unit in vatiable with unit agnostic type - time.Duration .... :man_facepalming: ((:
Hopefully we are on it here: https://github.com/improbable-eng/thanos/pull/1146
Consequence is that downsampling is technically never working now.
Should we revert this maybe? Unless I am wrong @GiedriusS (:


chore: bump azure cli 2.10.1 and Terraform 0.13.0

Adds a 2.10.1 version of the Azure CLI

Hey @bgauduch, here is the latest Azure CLI. Let me know if you'd like me to make any other changes.

Thanks @bgauduch . Suggestions implemented.

... assuming you know I don't have merge permissions and will perform the merge when you have time 😃

@ericis Absolutely, i'm not in front of a computer right now and will merte asap (I prefere to keep an eye on github actions especially when releasing) 😉

@ericis merge & release done: https://github.com/Zenika/terraform-azure-cli/releases/tag/4.6


Add files via upload

@minseoyi I am sorry, the domain tukorea.ac.kr is removed from our trusted domains list because it was abused in the past. If you are the student of this school, please enroll to GitHub Student Developer Program. Then apply for JetBrains educational subscription with your GitHub account (GitHub tab at https://www.jetbrains.com/shop/eform/students).


request help: [improve] how to update apisix  in product

Issue description
my enviroment current use 1.0 version ,and  i want to upgrade to 1.4.1version ,how i upgrade without affecting current runtime
system.
hope have a shell or managerment endpoint , implments one key to upgrade.
also want the installation to provide the same script
Environment

apisix version (cmd: apisix version):1.0.0
OS: centos7

you need to read the changelog of the new version, eg: 1.1, 1.2, 1.3, 1.4
You need to determine which changes that are not downward compatible are of your own concern.
for centos7, we advise you to install with RPM package way, you can install the new version, then the APISIX has upgraded to the new version.


I want to add my web dev projects

you can add your portfolio website in this repo

can I add my web dev project?


Variable Time Remaining in long format and freeze output

Hello,
I'm using Millumin 4.16.g, 3 macs on a closed network, Streamdeck 6.4.1 (19697), and Companion 3.1.2 (3.1.2+6243-stable-05c37a10).
The variable (timeLayerRemainingTime) is in a long format. For example 43.13213348388672.  All the time variables are like this.
Is this normal? Is there a way to just get the seconds?
Also, I cant seem to find the Freeze Output command anywhere in OSC or builtin Companion commands. Is there one? If not could it be added?
Thank you

This is normal and was confirmed by Philippe. I have been using a work around which looks like substr(secondsToTimestamp(round($(millumin:timeLayerRemainingTime))),3,8) this rounds the seconds to a whole number, converts the seconds to HH:MM:SS, and then uses substr to remove the HH from the timestamp.

Thank you for the work around!!!  It works great!!!
For the freeze output, not a pause, but under the "OUTPUT" menu there is a "FREEZE OUTPUTS" and with it turned on, I can jump around in the program and not effect the output screens. So I don't accidentally click on the wrong thing.  If it was added as an action to the companion plugin then it would be easy to freeze and unfreeze on streamdeck.
Thank you again!!!

substr(secondsToTimestamp(round($(millumin:timeLayerRemainingTime))),3,8)

@Jortsathan  What would this look like as the button name? I see what its doing, just not sure how to get it to work as a button.

Thank you for the work around!!! It works great!!!
For the freeze output, not a pause, but under the "OUTPUT" menu there is a "FREEZE OUTPUTS" and with it turned on, I can jump around in the program and not effect the output screens. So I don't accidentally click on the wrong thing. If it was added as an action to the companion plugin then it would be easy to freeze and unfreeze on streamdeck.
Thank you again!!!

@Don-Duckworth  How did you implement this to show on a button?


Marking all text at once freezes spyder for many seconds for larger codes with text

Issue Report Checklist
Checklist checked
Problem Description
So I'm working on my code which is near 10000 lines with codes and text, but when i press CTRL + A to mark everything, everything freezes for up to a minute. This is before running the code.
What steps reproduce the problem?
Find a code that is over 10000 lines with both code and text in it. Hit CTRL + A. Could also create a 200 line code with text and copy paste it up to 10000 lines.
Made a fictive code from chatGPT where the problem also occurs if you copy paste it enough:
import pandas as pd
import numpy as np

# Create a DataFrame with random data
np.random.seed(42)
data = {
    'Name': [f'Person {i}' for i in range(1, 11)],
    'Age': np.random.randint(20, 40, 10),
    'Salary': np.random.randint(50000, 80000, 10),
    'Department': np.random.choice(['HR', 'IT', 'Finance'], 10)
}

df = pd.DataFrame(data)

# Display the original DataFrame
print("Original DataFrame:")
print(df)

# Add a new column 'Bonus' based on a condition
df['Bonus'] = np.where(df['Salary'] > 60000, 0.1 * df['Salary'], 0)

# Calculate the average age and salary per department
department_stats = df.groupby('Department').agg({'Age': 'mean', 'Salary': 'mean'}).reset_index()
department_stats.columns = ['Department', 'AvgAge', 'AvgSalary']

# Merge the original DataFrame with department statistics
df = pd.merge(df, department_stats, on='Department')

# Create a new column 'SalaryIncrease' based on the difference from the average salary
df['SalaryIncrease'] = df['Salary'] - df['AvgSalary']

# Filter out individuals with age less than the department's average age
df = df[df['Age'] > df['AvgAge']]

# Display the final DataFrame
print("\nDataFrame after manipulation:")
print(df)

What is the expected output?
 I can't reproduce this on Linux and I don't see that we're doing anything especial about the select all operation.
@dalthviz, could you try it on Windows?

@ccordoba12 Managed to fix the problem by creating a new environment and do a clean install of Spyder, but this time through conda rather than pip

@ccordoba12 So this is a weird bug. Created a new env in Windows and clean installed Spyder and reset its settings. Everything went smooth, but then i zoomed out the code and did the same and then suddenly it crashed/froze again. Tried the exact same thing on Ubuntu on my Raspberry Pi but i cant replicate it there.

@ccordoba12 So this is a weird bug. Created a new env in Windows and clean installed Spyder and reset its settings. Everything went smooth, but then i zoomed out the code and hit Ctrl + A and then it crashed/froze again. Tried the exact same thing in Ubuntu on my Raspberry Pi but i couldnt replicate it there.
Update: Found the solution where i disabled "Highlight occurence after 1500ms" under Editor in Preferences and Spyder doesnt  freeze anymore. My pc is not the newest but might be an idea to check into this

@dalthviz, could you try it on Windows

So @Chuck321123 , you could use the Windows 10+ installer with WineHQ
I suppose u use Ubuntu but if you use like Linux mint you can try
Ubuntu 22.04
(Jammy Jellyfish)
Linux Mint 21.x
Try this link:  wiki.winehq.org/Ubuntu
Should work
regards

I think I was able to reproduce the crash/freeze. Something that I noticed is that at some point seems like the scrollflags for the occurence highlighting disappear/are still not set and if I try to do Ctrl + A multiple times while then quickly start clicking the Editor with the mouse Spyder freezes for some time. If in that state you keep trying to interact with Spyder it crashes. If you wait sometime it recovers:

No scrollflag marks for occurrences:

Also, maybe the freeze could also be caused/easy to trigger when doing a mouse click while also still holding the Ctrl key, since sometimes after the freeze I got a new file open like if I did a Ctrl+ Right Mouse Click to trigger the Go to definition action :thinking:

Spyder freezing:


I suppose that DJI team should use Carthage or Cocoapods to manage DJISDK.framework.

It seems that each DJI project contains a DJISDK.framework.When I clone projects,I may wait for a long time for downloading framework.
I suppose that DJI teams can create a DJISDK.framework project in Carthage or Cocoapods.So developers can use a indepenent way to import this framework.
It would save our time. :-)

Hi, thanks for your suggestions. Actually, DJI SDK supports Cocoapods now, please check this link for details: https://cocoapods.org/pods/DJI-SDK-iOS, hope this help!


take real user input for filename

I want to join and i have just added to take real user input for filename 😄

closing it as it says failed 😢


Multiple AL extensions with dependencies break navigation in Web and Windows

Running NAV 2018 CU4 OnPremise (11.0.21441.0), we have established that extensions with interdependencies cause NAV's automatic navigation to stop working. With "automatic navigation" I mean, the NAV search that automatically allows you to find pages provided by the Extension without defining an old-style MenuSuite.
After installing Extension A the menu item "Extension A" reliably appears and the navigation in Web and Windows using the search functions as expected. Then I install Extension B, which depends on Extension A, and at first both appear in the menu and navigation (usually) but often after a few seconds Extension B disappears from the menu and Extension A no longer contains any navigation entries except one. (And why that particular entry is always the one left is a mystery to us. We removed that object but still, when the navigation build crashes, it always leaves a single item from Extension A in the menu/search.) If the bug does not appear, installing a third extension, Extension C, which depends on Extension A, will fairly reliably cause the issue. At the very latest Extension D which depends on Extension B will cause it.
We tried to create a code sample for this but it is a fairly random problem. By restarting the NAV service tier, the problem disappears (often only momentarily). We are able to access the items missing from the menu using Start Object from the search, so they do work.

Hi @cherabomb, this issue has been fixed in the CU7 of NAV 2018. You can find the fix reported as 273220 in the Overview of the CU.

Hi @qutreson, thanks for the tip. We are not running a multitenant installation.


New Contribution - Active

Contributor: Nekooei
SSH Public key: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILZBC30SAkK6U/J0D2R1JqLraeMRIRh15/sQwPhuGnBZ
Attestation: [any form of attestation for contribution (e.g., signature) - Optional]

I am ready for contribution

yes I am ready

I've started my contribution by running ./download.sh

contribution started

I am at this state
contributing is still in progress

contribution done

upload started

@zvorcuit
Upload DOne

what should I do next ?

thanks

Dear @zvorcuit
Oh, that's very interesting to me,
here is my ETH address: 0x7B692AFfB3A753faCa1902D5Ff2C2dB7BD1d432D