Faster ScrollView. Try it with CharacterMap.

Did you change something that would cause the end key to stop working in scrollview?

Did you change something that would cause the end key to stop working in scrollview?

No. I think it not working before too.


Docker file for vision applications with ffcv and deeplabv3 dependencies

Build:
cd docker; TAG='mosaicml/pytorch:1.9.1_cu111-python3.7-ubuntu20.04' BASE_IMAGE='nvidia/cuda:11.1.1-cudnn8-devel-ubuntu20.04' PYTHON_VERSION='3.7' CUDA_VERSION_TAG='cu111' CUDA_VERSION='11.1.1' LINUX_DISTRO='ubuntu:20.04' PYTORCH_VERSION='1.9.1' TORCHVISION_VERSION='0.10.1' make vision

I modified the docker build process to support TARGETs. I didn't test it, but let's inspect the logs of this PR to ensure that feature is working properly.

Alternatively, we can install the precompiled mmcv packages using pip install mmcv-full==1.4.4 -f https://download.openmmlab.com/mmcv/dist/cu111/torch1.9.0/index.html, but this would need to be changed as we change the cuda and torch versions. If that sounds reasonable, we can install the precompiled packages

Alternatively, we can install the precompiled mmcv packages using pip install mmcv-full==1.4.4 -f https://download.openmmlab.com/mmcv/dist/cu111/torch1.9.0/index.html, but this would need to be changed as we change the cuda and torch versions. If that sounds reasonable, we can install the precompiled packages

I made it precompiled packages based. There was a complication though. Their installation page says  pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/{cu_version}/{torch_version}/index.html should work but it doesn't for torch1.9.1 but does for torch1.9.0 so had to manipulate the minor version.

S

@ravi-mosaicml Could you increase the timeout of 40 mins for the Jenkins build. This is exceeding the timeout. Building mmcv-full from sources is very time consuming. cc: @Landanjs

To increase the timeout, set the POD_TIMEOUT and/or P_TIMEOUT parameters in the .ci/Jenkinsfile under the appropriate job.
P_TIMEOUT: How long the job can run, once the command has been started (excluding scheduling delays)
POD_TIMEOUT: How long the job has to finish once it has been added to the queue (including scheduling delays)
So, POD_TIMEOUT should be larger than P_TIMEOUT

@ravi-mosaicml Could you increase the timeout of 40 mins for the Jenkins build. This is exceeding the timeout. Building mmcv-full from sources is very time consuming. cc: @Landanjs

To increase the timeout, set the POD_TIMEOUT and/or P_TIMEOUT parameters in the .ci/Jenkinsfile under the appropriate job.
P_TIMEOUT: How long the job can run, once the command has been started (excluding scheduling delays) POD_TIMEOUT: How long the job has to finish once it has been added to the queue (including scheduling delays). Default is 3600 (1 hour).
So, POD_TIMEOUT should be larger than P_TIMEOUT

Actually increasing the timeout is no longer necessary. We are installing from pre-built packages instead of building again.


Fixes missing Erlang dependency for RHEL7/CentOS7 installation

Fixes #1696, adds EPEL repo for RHEL7/CentOS7 installations via st2_deploy.sh
Tried different ways, like install erlang rpm only, but adding EPEL is the best way.

LGTM.


Use Werkzeug 0.15.5 to fix TypeError

When I tried Python examples with Python 3.8.5, I got the following error:
TypeError: required field "type_ignores" missing from Module

I updated the dependency since it seems the error is related to this issue:
https://github.com/pallets/werkzeug/issues/1551

Thanks @hibariya any chance it was working with 1.0.1? I think that might be newer and we could jump all the way to that version.

Certainly. I confirmed that all three examples are working with 1.0.1 and updated :smiley:

Awesome, @hibariya!! Thanks so much!


Steps: fixes issue #14502

Please make sure these boxes are checked before submitting your PR, thank you!

[x] Make sure you follow Element's contributing guide (中文 | English | Español | Français).
[x] Make sure you are merging your commits to dev branch.
[x] Add some descriptions and refer relative issues for you PR.

Fixes #14502

More good fix:
  mounted() {
    const unwatch = this.$watch('index', val => {
      this.$watch('$parent.active', this.updateStatus, { immediate: true });
      this.$watch('$parent.processStatus', () => {
        let val = this.$parent.active
        if (val > this.index) {
          this.internalStatus = this.$parent.finishStatus;
        } else if (val === this.index && this.prevStatus !== 'error') {
          this.internalStatus = this.$parent.processStatus;
        } else {
          this.internalStatus = 'wait';
        }
      }, { immediate: true });
      unwatch();
    });
  }

@island205 good point! thank you.

@wacky6 Would you like to review this PR?


Update run_path in config file & make PID consistent

Signed-off-by: dheerajd-msys<EMAIL_ADDRESS>Description

Update run_path in config file
Update conf to make  PID consistent.

Issues Resolved
Fixes https://github.com/chef-cookbooks/chef-client/issues/311
Check List

[ ] All tests pass. See https://github.com/chef-cookbooks/community_cookbook_documentation/blob/master/TESTING.MD
[ ] New functionality includes testing.
[ ] New functionality has been documented in the README if applicable
[x] All commits have been signed for the Developer Certificate of Origin. See https://github.com/chef-cookbooks/community_cookbook_documentation/blob/master/CONTRIBUTING.MD

@dheerajd-msys Can you rebase this to remove the template. We're not supporting running chef-client under sys-v on Ubuntu since those systems are all systemd now. People should be using systemd to manage their chef-client nodes.

Closing this PR and created new one https://github.com/chef-cookbooks/chef-client/pull/674


Added remoteEmit function.

I need sending emit to other socket which isn't placed on current node.
so, i follow remoteJoin function and create new api remoteEmit

Please use socket.to(<socketid>).emit(), it works accross nodes.

Thank you !


HADOOP-16885. Followup to fix test failure of encryption zone file copy

Followup to HADOOP-16885: Encryption zone file copy failure leaks a temp file
#1859
Moving the delete() call broke a mocking test.
Contributed by Steve Loughran.
(sorry; somehow missed this test failure. It's trivial enough to fix that I'm not going to revert the main patch)

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 37s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s
The patch appears to include 1 new or modified test files.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
19m  6s
trunk passed

+1 :green_heart:
compile
16m 49s
trunk passed

+1 :green_heart:
checkstyle
0m 51s
trunk passed

+1 :green_heart:
mvnsite
1m 26s
trunk passed

+1 :green_heart:
shadedclient
16m 36s
branch has no errors when building and testing our client artifacts.

+1 :green_heart:
javadoc
1m  1s
trunk passed

+0 :ok:
spotbugs
2m  5s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
2m  4s
trunk passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 48s
the patch passed

+1 :green_heart:
compile
16m 13s
the patch passed

+1 :green_heart:
javac
16m 12s
the patch passed

+1 :green_heart:
checkstyle
0m 50s
the patch passed

+1 :green_heart:
mvnsite
1m 24s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
shadedclient
14m  4s
patch has no errors when building and testing our client artifacts.

+1 :green_heart:
javadoc
1m  2s
the patch passed

+1 :green_heart:
findbugs
2m 13s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
9m 19s
hadoop-common in the patch passed.

+1 :green_heart:
asflicense
0m 52s
The patch does not generate ASF License warnings.

106m 25s

Subsystem
Report/Notes

Docker
Client=19.03.6 Server=19.03.6 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1874/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/1874

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux f4373340bacc 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / c0d0842

Default Java
1.8.0_242

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-1874/1/testReport/

Max. process+thread count
2597 (vs. ulimit of 5500)

modules
C: hadoop-common-project/hadoop-common U: hadoop-common-project/hadoop-common

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-1874/1/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

Thanks @steveloughran  for taking care of the test issue.


WIFI STA auto record AP info to NVS, But next running the ESP32 can not read. (IDFGH-10253)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

General issue report
In doc show:

If the Wi-Fi NVS flash is enabled by menuconfig, all Wi-Fi configuration in this phase, or later phases, will be stored into flash. When the board powers on/reboots, you do not need to configure the Wi-Fi driver from scratch. You only need to call esp_wifi_get_xxx APIs to fetch the configuration stored in flash previously. You can also configure the Wi-Fi driver if the previous configuration is not what you want.
I want to achieve if the STA record AP info is empty, I code to set a default AP info to STA. If AP info is exist in ESP32 NVS, I will use STA record AP info to connect AP(The new AP that may be connected is obtained through the BLUFI distribution network).
Because when I use BLUFI distribution AP info to STA, the STA restart can connect to last record AP info. I think wifi set the AP info to NVS because wifi auto connect to AP.
But I try to use esp_wifi_get_config() to get config, and I find the STA info is empty:
wifi_config_t wifiStaConfig = {0};
esp_err_t ret = esp_wifi_get_config(ESP_IF_WIFI_STA, &wifiStaConfig);
printf("%s\n",wifiStaConfig.sta.ssid);
printf("%s\n",wifiStaConfig.sta.password);

I want to know why, And I want to know the AP info is set where?

I am wrong with esp_wifi_get_config(), it can get the ESP32 storage AP info, but I want to know why I read the AP data with those code get same with STA data?
wifi_config_t wifiStaConfig = {0};
esp_err_t ret = esp_wifi_get_config(ESP_IF_WIFI_STA, &wifiStaConfig);
printf("%s\n",wifiStaConfig.ap.ssid);
printf("%s\n",wifiStaConfig.ap.password);

wifi_config_t is a union and the first two fields of the (struct) members are identical (by "coincidence").

Thank you!


Energy Dashboard

Hi there,
nice work with this integration :)
Is it possible to use this integration to provide data to the energy dashboard?

Yes this is possible, but you need to add some custom sensors to convert the power values to energy.
This is possible using this template sensor Energy Template
I added my sensors from the configuration.yaml below:
sensor:
  - platform: integration
    source: sensor.energymanager_power_consumed_from_grid
    name: energy_from_grid
    unit_prefix: k
    round: 2

  - platform: integration
    source: sensor.energymanager_power_export_to_grid
    name: energy_to_grid
    unit_prefix: k
    round: 2

  - platform: integration
    source: sensor.energymanager_power_consumed
    name: energy_consumed
    unit_prefix: k
    round: 2

  - platform: integration
    source: sensor.energymanager_pv_power
    name: energy_produced_pv
    unit_prefix: k
    round: 2

After adding these it can take some time for them to show up in the energy config (i think it needs to collect some values before they show up)

Thanks!
I added it just now and will test it tomorrow.

So I added the sensors for the myreserve battery with the following coniguration.yaml:
sensor:
  - platform: integration
    source: sensor.energymanager_power_consumed_from_grid
    name: energy_from_grid
    unit_prefix: k
    round: 2
  - platform: integration
    source: sensor.energymanager_power_export_to_grid
    name: energy_to_grid
    unit_prefix: k
    round: 2
  - platform: integration
    source: sensor.energymanager_power_consumed
    name: energy_consumed
    unit_prefix: k
    round: 2
  - platform: integration
    source: sensor.energymanager_pv_power
    name: energy_produced_pv
    unit_prefix: k
    round: 2
  - platform: integration
    source: sensor.energymanager_myreserve_power_in_from_producers
    name: energy_battery_from_producers
    unit_prefix: k
    round: 2
  - platform: integration
    source: sensor.energymanager_myreserve_power_self_supplied
    name: energy_battery_supply
    unit_prefix: k
    round: 2

But I can only see the following sensors in my energy dashboard:

energy_battery_supply
energy_produced_pv
energy_from_grid
energy_consumed

I also got following warnings in my homeassistant logs:
2021-09-07 11:09:24 WARNING (Recorder) [homeassistant.components.sensor.recorder] The unit of sensor.energy_to_grid (kWh) does not match the unit of already compiled statistics (None). Generation of long term statistics will be suppressed unless the unit changes back to None
2021-09-07 11:09:24 WARNING (Recorder) [homeassistant.components.sensor.recorder] The unit of sensor.energy_battery_from_producers (kWh) does not match the unit of already compiled statistics (None). Generation of long term statistics will be suppressed unless the unit changes back to None

Do you know how to delete the long term statistics of energy_battery_from_producers and energy_to_grid?

I tested it myself and ran into the same issue, found this thread on how to fix it by manually editing the database

Btw, I´m currently working on integrating the energy stats, which the energy manager keeps itself.
This should fix this problem and also provide better stats instead of the calculated ones through homeassistant

Okay nice, then I'll wait for your new release

Hi is just released version 0.2 which adds the new energy sensors
I hope you can successfully integrate them in your setup

Nice work so far 👍
I've noticed some improvements/some things that are unclear to me:

What is ment by the sensor energy_buffered and energy_released? Could need some explanaition to these entities.
From where do the entities profit_kwh_to_grid and cost_kwh_from_grid get the values?
Which entities can I use to track whats going in and out of my battery (myreserve)?
Maybe rename energy grid into storage into energy from grid into storage (const.py:204)

I have not found any official documentation on the meaning of all values, so i had to guess from their json names and how the values correlate with each other, so the explanations below are my best guess :)

energy_buffered is the sum from all sources into the myreserve
energy_released i think is the sum of all energy to the grid
profit_kwh_to_grid and cost_kwh_from_grid are returned by the energy manager, i think they were set by your installer

I track the myreserve as following in the energy dashboard:
-> sensor.energy_consumed_storage -> battery out
-> sensor.energy_from_pv_into_storage -> battery in
This only tracks pv -> storage -> house, but i dont really care about grid -> storage (sensor.energy_grid_into_storage) or storage -> grid (sensor.energy_to_grid_from_storage) because these are very small amounts for my setup
Thanks for the hint with the naming, i added a couple missing from to some names to make them more clear in the next release

Thanks for pointing that out to me. I added the entities like you suggested.
I'm closing this now since I believe that this issue has been resolved. Thanks again.


display hover doc for the element under the cursor #69

Signed-off-by: Lars Heinemann<EMAIL_ADDRESS>

for the PathParam, it provides hover documentation only when it is still the value predefined in the scheme. If the value has been changed, there is no more hover
for instance "timer:timerName", with cursor above timerName will provide doc in hover
"timer:myTimerName" with cursor above myTimerName will not provide doc in hover

checking for the real value now

@apupier addressed all your concerns


Feat: Add manual dark mode support

While reading the source code I played around it a little bit and added dark mode support to the panel. I think it will be more convenient to let users choose the theme of the panel on their own instead of only depending on system's theme.
color-mode-demo.webm
Currently swr-devtools-panel depends on system's preference to enable dark mode manual dark mode has option for that too.
@koba04, should i open a PR for this.

@dev-afzalansari That looks amazing!!! 👍 👍


Flatatt cant import on django 1.11

File "/usr/local/lib/python2.7/site-packages/tinymce/models.py", line 6, in
from tinymce import widgets as tinymce_widgets
File "/usr/local/lib/python2.7/site-packages/tinymce/widgets.py", line 14, in
rom django.forms.widgets import flatatt
ImportError: cannot import name flatatt
What should i do?

I have post changes to support the new vesrions.


Default Sales Agent prompts do not use stage-related inputs like conversation_stage

Dug into the implementation of the SalesGPT class in salesgpt/agents.py, and I found that some of the prepared inputs in the call/acall methods are not entirely used when invoking models. Example inputs:
inputs = {
            "input": "",
            "conversation_stage": self.current_conversation_stage,
            "conversation_history": "\n".join(self.conversation_history),
            "salesperson_name": self.salesperson_name,
            "salesperson_role": self.salesperson_role,
            "company_name": self.company_name,
            "company_business": self.company_business,
            "company_values": self.company_values,
            "conversation_purpose": self.conversation_purpose,
            "conversation_type": self.conversation_type,
        }

conversation_stage is not used in either the SALES_AGENT_TOOLS_PROMPT nor the SALES_AGENT_INCEPTION_PROMPT inside salesgpt/prompts.py

Yes, i find the bug too, so i added a conversation_stage slot into the SALES_AGENT_INCEPTION_PROMPT。


Flow correction in Turbine_NPSS

It appears that in NPSS, the turbine maps use Wc that is corrected without the use of standard day temperature and pressure.
TMATS Wc correction:  Wc = W * sqrt(Tt/Tstd)(Pstd/Pt)
NPSS Wp correction for the turbine: Wp = W * sqrt(Tt/Tstd)(Pstd/Pt)
If the scalars were calculated for T-MATS this will not matter, however if NPSS scalars are used as calculated this is an issue and the NPSS s_Wc must be multiplied by Pstd/sqrt(Tstd) ~ 0.6441 to remove the effect.
Update Turbine_NPSS to adjust the Wc value and remove the standard day portions. It should be noted that this will force everyone to update the s_Wc value for any block using the Turbine_NPSS.

This has been updated as of 2/16/2017, see commit:
ecec1b80c36749f7d7ff21d9f7aac4f9a7733d55


Integrate decentraland/ecs to the build-ecs system and start building scene with new-ecs without the old-ecs wrapper

First add the new libs to the package.json
{ "name": "decentraland-scene",
+ "bundledDependencies": ["@dcl/amd", "@dcl/ecs"],
}

Then run with NO_DEFAULT_LIBS=1
# then run with
NO_DEFAULT_LIBS=1  npm run build

https://github.com/decentraland/js-sdk-toolchain/blob/main/packages/%40dcl/build-ecs/index.ts#L564

Excellent, I'll try


ui-env-vars-288 # added env variables to form

Reference Issues or PRs
https://github.com/nebari-dev/jhub-apps/issues/79

What does this implement/fix?
Adds a form field to include environment variables to Create App
Put a x in the boxes that apply

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds a feature)
[ ] Breaking change (fix or feature that would cause existing features not to work as expected)
[ ] Documentation Update
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no API changes)
[ ] Build related changes
[ ] Other (please describe):

Testing

[x] Did you test the pull request locally?
[x] Did you add new tests?

Documentation

Access-centered content checklist
Text styling

[ ] The content is written with plain language (where relevant).
[ ] If there are headers, they use the proper header tags (with only one level-one header: H1 or # in markdown).
[ ] All links describe where they link to (for example, check the Nebari website).
[ ] This content adheres to the Nebari style guides.

Non-text content

[ ] All content is represented as text (for example, images need alt text, and videos need captions or descriptive transcripts).
[ ] If there are emojis, there are not more than three in a row.
[ ] Don't use flashing GIFs or videos.
[ ] If the content were to be read as plain text, it still makes sense, and no information is missing.

Any other comments?

Can you merge the latest main branch, vercel deployment should pass after that.


Adds ability to load quantized weights by de-quantizing them.

Works in conjunction with https://github.com/tensorflow/tfjs-converter/pull/87.

This change is

Thanks for doing this!
Can you go talk to Suharsh and make sure this approach seems reasonable to him? Specifically I want to make sure 0s are 0s (which means you may have to use scale / offset).

Review status: 0 of 1 files reviewed at latest revision, all discussions resolved, some commit checks failed.

src/weights_loader.ts, line 128 at r1 (raw file):

      const fetchUrl = filePathPrefix +
          (!filePathPrefix.endsWith('/') ? '/' : '') + filepath;
      requests.push(fetch(fetchUrl, requestOptions));

this should not be removed

Comments from Reviewable

@nsthorat @pyu10055 this is now ready for review.

Looks great! One comment to reduce number of intermediate allocated arrays, and after that I'm very happy to get this in!

Review status: 0 of 2 files reviewed at latest revision, 1 unresolved discussion, some commit checks failed.

src/weights_loader.ts, line 178 at r3 (raw file):

        let quantizedArray: Float32Array;
        if (quantization.dtype === 'uint8') {
          quantizedArray = Float32Array.from(new Uint8Array(byteBuffer));

no need to have this intermediate Float32Array. Just allocate the final typedArray depending on the logical dtype (Int32Array or Float32Array). JS will give you all zeros if you use the c-tor with the size passed in.
Then iterate directly over the UIn8Array or UInt16Array (depending on the quantized dtype), and do the math directly there.
const quantized = new Uint8Array(byteBuffer); // or UInt16Array
const typedArray = new Float32Array(quantized.length); // or Int32Array
for (let i = 0; i < a.length; i++) {
  typedArray[i] = quantized[i] * scale + min;
}

Comments from Reviewable

Review status: 0 of 2 files reviewed at latest revision, 2 unresolved discussions, some commit checks failed.

src/weights_loader.ts, line 178 at r3 (raw file):
Previously, dsmilkov (Daniel Smilkov) wrote…
no need to have this intermediate Float32Array. Just allocate the final typedArray depending on the logical dtype (Int32Array or Float32Array). JS will give you all zeros if you use the c-tor with the size passed in.
Then iterate directly over the UIn8Array or UInt16Array (depending on the quantized dtype), and do the math directly there.
const quantized = new Uint8Array(byteBuffer); // or UInt16Array
const typedArray = new Float32Array(quantized.length); // or Int32Array
for (let i = 0; i < a.length; i++) {
  typedArray[i] = quantized[i] * scale + min;
}

Forgot to say , if it's int32, round before you assign to typedArray[i]

Comments from Reviewable

Review status: 0 of 2 files reviewed at latest revision, 2 unresolved discussions, some commit checks failed.

src/weights_loader.ts, line 128 at r1 (raw file):
Previously, nsthorat (Nikhil Thorat) wrote…
this should not be removed

Done.

src/weights_loader.ts, line 178 at r3 (raw file):
Previously, dsmilkov (Daniel Smilkov) wrote…
Forgot to say , if it's int32, round before you assign to typedArray[i]

Done.

Comments from Reviewable

Done.

Review status: 0 of 2 files reviewed at latest revision, 2 unresolved discussions.

Comments from Reviewable

Reviewed 1 of 2 files at r4.
Review status: 0 of 2 files reviewed at latest revision, 5 unresolved discussions, all commit checks successful.

src/weights_loader.ts, line 187 at r4 (raw file):

        if (dtype === 'float32') {
          dequantize = v => v * quantization.scale + quantization.min;
          typedArray = new Float32Array(quantizedArray.length);

use typeArray = Float32Array.from(quantizedArray, v => v * quantization.scale + quantization.min), same for int32 case.

Comments from Reviewable

Review status: 0 of 2 files reviewed at latest revision, 6 unresolved discussions, all commit checks successful.

Comments from Reviewable

Reviewed 1 of 2 files at r4.
Review status: 0 of 2 files reviewed at latest revision, 6 unresolved discussions, all commit checks successful.

Comments from Reviewable

 Nice work Adam. I think the only outstanding comment is Ping's about using Float32Array.from(). After that I'll merge this in.

Reviewed 2 of 2 files at r5.
Review status: all files reviewed at latest revision, 6 unresolved discussions, all commit checks successful.

src/weights_loader.ts, line 187 at r4 (raw file):
Previously, pyu10055 (Ping Yu) wrote…
use typeArray = Float32Array.from(quantizedArray, v => v * quantization.scale + quantization.min), same for int32 case.

+1. This will create one less intermediate array

Comments from Reviewable

Review status: all files reviewed at latest revision, 6 unresolved discussions, all commit checks successful.

src/weights_loader.ts, line 187 at r4 (raw file):
Previously, dsmilkov (Daniel Smilkov) wrote…
+1. This will create one less intermediate array

Done.

Comments from Reviewable


Highlight groups with guifg=#ffffff unreadable in latte theme

There are quite some highlight groups that have guifg=#ffffff (i.e. white). These are practically unreadable in the latte theme, due to the light background.
I have, for now, modified my vimrc to link all these groups to other groups, but a proper fix is desirable (also because my 'quick links' might not adhere to the guidelines or other editors).
    exec 'highlight! link Delimiter Special'
    exec 'highlight! link Tag Special'
    exec 'highlight! link SpecialChar Special'
    exec 'highlight! link Precondit Comment'
    exec 'highlight! link SpecialComment Comment'
    exec 'highlight! link Exception Error'
    exec 'highlight! link StatusLineTerm StatusLine'
    exec 'highlight! link StatusLineTermNC StatusLineNC'
    exec 'highlight! link Terminal Normal'
    exec 'highlight! link Ignore Comment'
    exec 'highlight! link Define Label'
    exec 'highlight! link Macro Label'
    exec 'highlight! link debugPC DiffText'
    exec 'highlight! link debugBreakpoint DiffDelete'
    exec 'highlight Underlined guifg=' s:GetColorFromHl('Normal', 'fg', 'gui') 'ctermfg=' s:GetColorFromHl('Normal', 'fg', 'cterm')

The last line uses some custom functions I have written,  but essentially means: "Underlined" is "Normal" but with underlines :smile:

See if it works, some of the links do not follow the original theme so I have changed them, however I have kept some of those where there are no specific guidelines


Update zbctl to 0.20.0

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

How can I tell this CLA tool that I'm a Camunda employee? ;-)

Thanks!


Add GH action to publish RC on merge

~I'm not sure how to test this 😅~
~I've added links in the comments to examples I've followed so hopefully it's all good but what do we think we should do here?~
~I found something called act for testing GitHub actions  and installed Docker like it suggests but then it dawned on me that it would probably still do a publish...? so dno. I also couldn't get it to work off the bat so would require a dedicated effort.~

All tested and working smoothly when I tested with tokens that I had created. Tokens have since been switched to Stephen's which should be fine too as I've walked through correct configuration with him.

Blood sweat and tears have gone into testing this 😅 but it is now ready and working! So pleased with this 🎉

I am also wondering what impact this has on to when we do a manual stable release, would that trigger anything when we commit the deleted version files, updated package.json or is it only on merge?

Hmm, interesting. I guess I need to add .yarn/versions/** to the paths-ignore.


Docker work-flow improvements

This PR aims to make the process of working with PolicyBrain's Docker containers a little easier. The development and deployment structure for PolicyBrain is beginning to solidify. Now is the time to make it easier to develop and deploy with this new infrastructure. Here are some goals for this PR:

only tag the PolicyBrain version in one place

currently the PolicyBrain version is hardcoded in two Dockerfiles, docker-compose.yml, the three back-end and one front-end image on dockerhub (where the images are pushed once they are tagged), the PolicyBrain webapp/settings.py file, and the git history.
It is difficult to remember to keep all of these tags in sync and it is easy to be lazy and not update the tag in one part of the app when another part of the app is updated in an unrelated way.

scripts for building and publishing all images
scripts for building and running all images
need to find a flow that makes it easy to develop and quickly see changes without re-starting and re-building a bunch of docker images.

If all of these goals are accomplished, then PolicyBrain will be very close to a place where it can be put on an automated build and deploy system. This is very exciting for me because I would get to save a lot of time by not manually deploying the webapp. More importantly, it is exciting for anyone who develops the webapp or reports bugs found in it because the changes can be seen in production much more quickly.
@Abraham-Leventhal, @lucassz, @andersonfrailey if you have any ideas related to this issue I'd be happy to hear them. Even after this is merged, feel free to open up issues around how the process for running PolicyBrain locally could be made easier.

I'm going to use the Makefile added in PR #900 while I'm developing over the next few days. I think this will help identify which commands are missing and which commands can be improved.

Whoops, looks like this was automatically merged with #910 since changes here were merged into #910. The upshot of the changes here are that all images can be tagged, built, and pushed via a command like:
TAG=v1.7.0_rc1 VERSION=test make dist-build -e TAG=$TAG && \
    make dist-push -e TAG=$TAG && \
    make web-build -e TAG=$TAG && \
    make web-push -e TAG=$TAG -e VERSION=$VERSION

There are still some ways where workflow can be improved. For example, I found myself using the following command pretty frequently while working on the worker node app in #910:
cd .. && \
    make dist-build -e TAG=$TAG && \
    cd distributed && \
    docker-compose rm -f && \
    docker-compose up

Perhaps, there could be another Makefile in the distributed directory. I'm not sure what the protocol for chaining together Makefile commands is.
@martinholmer I got the idea to use Makefile's here from you. Thanks for the inspiration. The use of a Makefile has streamlined development significantly. Also, it was pretty easily to develop the first iteration of this file.
Do you have any thoughts on the Makefile merged here? Or, any ways that it could be improved?


Refactor endpoint for retrieving all temporarily deleted products

Description
Following the resources provided by @zxenonx on standard API naming conventions and best practices, I fixed my endpoint of retrieving all temporarily deleted products by replacing underscores with hyphens. I also updated swagger docs to reflect the same.

Related Issue (Link to linear ticket)

Motivation and Context
Following best API practices.

How Has This Been Tested?
Just an api fix.

Screenshots (if appropriate - Postman, etc):

Types of changes

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

Checklist:

[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

@Freeman-kuch how about this?


JS timers and redirects used in the client-side import module behave differently depending on the Browser and OS

Chrome on Windows appears to have the most problems.  The browser fails to detect that an ingest has progressed or stalled and displays a "catch all" network error.  I'm going to move the redirects to the server-side in order to rely less on the browser and OS.

Ingest process refactored.


bundle install: Could not find thor-<IP_ADDRESS>40116 in any of the sources

Same as issue #507, but I made a new dashboard and it didn't work. I edited the Gemfile.lock to the correct version of thor but it did not help.

root@archive:~/dash/dashboard_dev# git push heroku master
Counting objects: 75, done.
Compressing objects: 100% (71/71), done.
Writing objects: 100% (75/75), 348.06 KiB | 0 bytes/s, done.
Total 75 (delta 8), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Ruby app detected
remote: -----> Compiling Ruby/Rack
remote: -----> Using Ruby version: ruby-2.0.0
remote: -----> Installing dependencies using bundler 1.9.7
remote:        Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment
remote:        Fetching gem metadata from https://rubygems.org/...........
remote:        Fetching version metadata from https://rubygems.org/...
remote:        Fetching dependency metadata from https://rubygems.org/..
remote:        Could not find thor-<IP_ADDRESS>40116 in any of the sources
remote:        Bundler Output: Fetching gem metadata from https://rubygems.org/...........
remote:        Fetching version metadata from https://rubygems.org/...
remote:        Fetching dependency metadata from https://rubygems.org/..
remote:        Could not find thor-<IP_ADDRESS>40116 in any of the sources
remote:  !
remote:  !     Failed to install gems via Bundler.
remote:  !
remote:
remote:  !     Push rejected, failed to compile Ruby app
remote:
remote: Verifying deploy....
remote:
remote: !	Push rejected to pdashb.
remote:
To https://git.heroku.com/pdashb.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/pdashb.git'
root@archive:~/dash/dashboard_dev#

Exactly the same issue. Have updated to the latest dashing but still get this error on deploy. Anyone know how to solve it?

I ended up uninstalling ruby, reinstalling, upgrading everything and starting afresh. Not a very satisfying answer, I know.

I tracked this issue down to Ubuntu 14.04.  The ruby-thor package includes a patched version of thor which reports itself as 0.18.1-20140116.  After that they went with 0.19.1-2.
That means that current versions of dashing (1.3.7) and dashing-contrib (0.2.4) have incompatible dependency constraints on Thor, unless you happen to be running on that particular platform (at least with the latest bundler).
dashing:

thor > 0.18.1

ubuntu:

thor = 0.18.1-20140116

dashing-contrib:

thor ~> 0.18.1


⚠ ClamAV has degraded performance

In 02ae5aa, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 182 ms

Resolved: ClamAV performance has improved in 15e2534 after 5 minutes.


Typo, bad paste & copy or forgotten ?

FastAccelStepper.c, line 484
_enablePinHighActive && _enablePinHighActive ?
  if ((_enablePinHighActive == PIN_UNDEFINED) &&
      (_enablePinHighActive == PIN_UNDEFINED)) {
    _externalEnableCall = NULL;
  }

Thanks for the report. Some typos are hard to find and there is no test for it either.
Anyway, I have fixed the code in master. It will be included in the next release.


Where to place code for querying hardware button state?

Where in SampleApp would one place known-working code like the following for triggering microphone mute or tap-to-wake so that the button state is constantly queried?
    int mute = digitalRead (25) ;     if(mute == 1){         m_interactionManager->microphoneToggle();     }
I've tried injecting the code into SampleApplication.cpp run as well as in various places in UserInputManager.cpp without success.
Thank you!

Hi @zachpino,
The SDK and SampleApp don't have a central polling loop that runs continuously.  The code is structured to block threads until an event occurs to wake them up.
For your application, if you don't have any way to get an interrupt or signal that the button state has changed, then I would suggest launching a thread which contains a polling loop that calls your code above.  You could start the thread in in SampleApplication::run() before the call to m_userInputManager->run(), and it might look something like this (untested):
void SampleApplication::run() {
    std::atomic<bool> exitMuteThread(false);
    std::thread muteButtonThread(
        [this, &exitMuteThread] {
            while (!exitMuteThread) {
                int mute = digitalRead (25);
                if(mute == 1) {
                    m_interactionManager->microphoneToggle();
                }
                // sleep or yield so this thread doesn't peg the cpu
                std::this_thread::yield();
        }
    );
    m_userInputManager->run();
    exitMuteThread = true;
    exitMuteThread.join();
}

Ken

Thanks so much @kencecka!  Amazing!
A few changes were needed. Hope this helps others!
void SampleApplication::run() {
    std::atomic<bool> exitMuteThread(false);
    std::thread muteButtonThread(
        [this, &exitMuteThread] {
            while (!exitMuteThread) {
                int mute = digitalRead (25);
                if(mute == 1) {
                    m_interactionManager->microphoneToggle();
                }
                // sleep or yield so this thread doesn't peg the cpu
                std::this_thread::yield();
        }
    });
    m_userInputManager->run();
    exitMuteThread = false;
    muteButtonThread.join();
}

Hey. Zachpino, where did you specifically insert this code?


Endpoint for Getting User Data

It would be good to have an endpoint so that the user can access his information, related to his e-mail and name.

Review the latest update and respond here: New Comment
This is critical—take action now.
Stay secure!


Getting Permission denied error and all the ports are blocked

Issue description
Getting "Permission denied" error while trying to bind to an address.
The problem is this - if i create PUB socket and try to connect to a socket which is not created yet, after a while (maximum 30 minutes) it blocks all the ports of my system.
At first I get Permission denied error when I try to do REP socket bind.
After some time I am not able even open a tab in chrome - it blocks all the ports and I have to reboot the system.
If I comment out the code which does connect of PUB socket I never see the problem.
Environment
Python

libzmq version (commit hash if unreleased): 4.2.5 and 4.3.1
OS: Windows Subsystem for Linux (WSL) on on Windows 10

Minimal test code / Steps to reproduce the issue
1.Put this script into python file and call python3 path_to_file.py
2.Call the same script in another terminal as well and do not terminate both of them
3. Leave the scripts to run for 30 minutes
4. Terminate one of them and try to start again.
#!/usr/bin/env python3
import random
import sys
import os

import zmq

LOGGER_SERVICE_ADDRESS = os.environ.get("LOGGER_SERVICE_ADDRESS", 'tcp://<IP_ADDRESS>:62001')

class StreamExec:
    def __init__(self):
        self._context = zmq.Context()
        self._poller = zmq.Poller()
        self.event_handler_socket = None
        self.logger_socket = None

    def run(self):
        print(zmq.zmq_version())
        try:
            self.init_logger_socket()
            self.bind_event_handler()
            while True:
                a = 1
        except KeyboardInterrupt:
            print("KeyboardInterrupt")
        finally:
            print("finally")
            self.do_finallizing()

    def bind_event_handler(self):
        count = 0
        while True:
            if count >= 20:
                # It seems can't bind to an address, 20 attempts are failed
                print('Could not bind event handler after 20 attempts.')
                sys.exit(1)
            try:
                address = '%s://%s:%s' % ('tcp', '<IP_ADDRESS>', StreamExec.random_port())
                self.event_handler_socket = self._context.socket(zmq.REP)
                self.event_handler_socket.bind(address)
                self._poller.register(self.event_handler_socket, zmq.POLLIN)
                print("Success", address)
                break
            except zmq.ZMQError as e:
                print("Error", e)
                count = count + 1

    def do_finallizing(self):
        if self.event_handler_socket:
            self.event_handler_socket.close()
            self.event_handler_socket = None
        self.destroy_logger_socket()
        self._context.destroy()

    def init_logger_socket(self):
        try:
            print("Connecting to {}".format(LOGGER_SERVICE_ADDRESS))
            self.logger_socket = self._context.socket(zmq.PUB)
            self.logger_socket.setsockopt(zmq.LINGER, 0)
            self.logger_socket.connect(LOGGER_SERVICE_ADDRESS)
            print("Seems to be connected")
        except zmq.ZMQError as e:
            message = 'Could not create socket to send logs.' % e
            print(message)
            self.destroy_logger_socket()

    def destroy_logger_socket(self):
        if self.logger_socket:
            print("destroy_logger_socket")
            self.logger_socket.close()
            self.logger_socket = None

    @staticmethod
    def random_port():
        """ Create a random port number within the user port range."""
        port_min = 61000
        port_max = 62000
        return random.randint(port_min, port_max)

if __name__ == "__main__":
    ex = StreamExec()
    ex.run()

What's the actual result? (include assertion message & call stack if applicable)
[ERROR] Mar 26 19:21:19 messenger(messenger)[]: self.event_handler_socket.bind(address)
[ERROR] Mar 26 19:21:19 messenger(messenger)[]: File "zmq/backend/cython/socket.pyx", line 547, in zmq.backend.cython.socket.Socket.bind
[ERROR] Mar 26 19:21:19 messenger(messenger)[]: File "zmq/backend/cython/checkrc.pxd", line 25, in zmq.backend.cython.checkrc._check_rc
[ERROR] Mar 26 19:21:19 messenger(messenger)[]: zmq.error.ZMQError: Permission denied
What's the expected result?
To not block other ports even if I try to connect to a socket which does not exist yet.

Im facing same issue as well. Windows firewall off, cmd run as as admin.

sorry for never seeing this, but closing optimistically. I doubt this is pyzmq-related. If folks have issues like this, the first thing to test is opening tcp sockets with the standard library socket.socket module, and then reporting to libzmq if you can create tcp sockets on the same port in one way, but not with zmq.


fix: column 'id' can be ambiguous

Analog to https://github.com/flarum/framework/pull/3772
@askvortsov1 can you take a look ?

@askvortsov1 bump, could you merge this and make a release?

@askvortsov1 Other bump...


Set GOMAXPROCS for runit services

GOMAXPROCS wasn't set for runit services as it was for init.d services; this changes corrects that oversight.

Coverage remained the same at 100.0% when pulling 0ecb7540d93a0aa180c3ef0ac5d4ff0998abfdab on webcoyote:patch-1 into 57b4105c6d454adeaf5ce749387912abb1b2d3ae on johnbellone:master.


Add events for server/controller/node/device etc

E.g., I've encountered something like:
ERROR SubscriptionHandler Sending update failed 3 times in a row, canceling subscription 378973842 and let controller subscribe again.

But it seems hard (if not impossible) to add cancel callback for this. Actually, I think this should emit an error event which crashes the program if unhandled.
Another case is that I would like to listen to device/node changes after server starts.
I would suggest going with the standard Node.js event listener interface, which is familiar to Node.js developers, but anything unified with error handling/crash mechanism would do.
I think those might be essential to usage in production.

A next (planned) High level API will cover these cases via "event like callbacks".I already have that on my plate


Reference not correctly rewritten with setResolve

Given this setup with 2 files (test.yaml and common.yaml) in the same folder defined like this:
#test.yaml
openapi: 3.0.0
info:
    version: "1.0"
    title: Swagger Parser Issue
paths:
  /:
    post:
      requestBody:
        $ref: '#/components/requestBodies/RefRequestBody'
      responses:
        default:
          description: "Error"
components:
  requestBodies:
    RefRequestBody:
      content:
        'application/json':
          schema:
            $ref: 'common.yaml#/components/schemas/StringObject'

With the external reference pointing to:
#common.yaml
openapi: 3.0.0
info:
    version: "1.0"
    title: Swagger Parser Issue
paths: {}
components:
  schemas:
    String:
      type: string
    StringObject:
      type: object
      properties:
        val:
          $ref: '#/components/schemas/String'

With code to use swagger-parser:
String inputSpec = "/<path to>/test.yaml";

OpenAPIParser openApiParser = new OpenAPIParser();
ParseOptions options = new ParseOptions();
options.setResolve(true);
options.setFlatten(true);

SwaggerParseResult parseResult = openApiParser.readLocation(inputSpec, null, options);
OpenAPI openAPI = parseResult.getOpenAPI();

String string = io.swagger.v3.core.util.Yaml.mapper().writerWithDefaultPrettyPrinter()
        .writeValueAsString(openAPI);
System.out.println(string);

I get this output:
openapi: 3.0.0
info:
  title: Swagger Parser Issue
  version: "1.0"
servers:
- url: /
paths:
  /:
    post:
      requestBody:
        $ref: '#/components/requestBodies/RefRequestBody'
      responses:
        default:
          description: Error
components:
  schemas:
    StringObject:
      type: object
      properties:
        val:
          $ref: ./common.yaml#/components/schemas/String
    String:
      type: string
  requestBodies:
    RefRequestBody:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StringObject'

In my opinion ./common.yaml#/components/schemas/String is wrong and should have been rewritten to '#/components/schemas/String

Hi @jmini thanks for reporting this issue. It was fixed by the merge of #1182


Merge default feature flags and user defined feature flags

Rename the default feature flags key in config.py to DEFAULT_FEATURE_FLAGS
Merge default feature flags with user defined ones allowing the latter to overwrite the former
Expose feature_flags for both server and client to use
Add a utility method for checking whether a feature flag is on on server side

@agrawaldevesh @mistercrunch

I'm doing some more thinking on this and would like to extend the feature to be more dynamic, so that we can actually turn features on and off based on user attributes or perhaps other context. It'd be powerful to be able to use a hook here to do progressive releases (1%, 5%, 10%, ...), or based on roles (say an 'early_adopter' role).
As a static-per-environment feature (like it is now) it doesn't offer much more than the app.config offers already. Let's think of ways to make it more dynamic.
At first I was thinking about exposing a function in config GET_FEATURE_FLAGS(), and by its nature it'd have access to the user and request objects that are provided by Flask/FAB. Since we want the framework to work both on the backend AND frontend, I think it has to be a function that returns the whole dict of flags so that it can be computed on the backend and sent to the frontend (as opposed to a GET_SINGLE_FEATURE_FLAG(flag) function).
What do you think?

👍 LGTM


Implement ChatBot and ImageBot for iOS

Change-Id: I5beea8f2ae60de72afcdf718fdd440195d0d2fe9

A few notes:

The code for computing the edit mask in ImageBot isn't working yet. I'm still investigating.
ChatBot includes Apikey and maps it to ApiKey for naming consistency. This is already fixed in #2903.
This should be merged after #2903 but can be tested with ai2-test.

This is fine for now when were' using only OpenAI.  But ai expect we'll
also include other options before too long.
== Hal
Hal Abelson
@.***
Prof. of Comp. Sci. and Eng.
MIT Dept. of Elec. Eng. and Comp. Sci.
On Fri, Jun 16, 2023 at 2:13 PM Evan W. Patton @.***>
wrote:

@.**** commented on this pull request.
In appinventor/components-ios/src/ImageBot.swift
https://github.com/mit-cml/appinventor-sources/pull/2905#discussion_r1232583479
:

   return nil

 }

 let image = UIImage(ciImage: output)

 let format = UIGraphicsImageRendererFormat()

 format.scale = 1.0

 let size = CGSize(width: CGFloat(Size), height: CGFloat(Size))

 let result = UIGraphicsImageRenderer(size: size, format: format).pngData { context in

   image.draw(in: CGRect(origin: .zero, size: size), blendMode: .copy, alpha: 1.0)

 }

 return result

}
return context.pngRepresentation(of: bitmap, format: .ARGB8, colorSpace: ImageBot.sRGB)
}

func saveImage(_ content: Data) throws -> String {
let destination = try FileUtil.getPictureFile("png")

OpenAI only returns PNG file content, so this is safe.
—
Reply to this email directly, view it on GitHub
https://github.com/mit-cml/appinventor-sources/pull/2905#discussion_r1232583479,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAGAXN7YMZCBLMDDYLTGA2LXLSOZXANCNFSM6AAAAAAZIODMUM
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

This is fine for now when were' using only OpenAI. But ai expect we'll also include other options before too long.

I think that the input format and the output format can, presumably, be treated separately.  I would argue that simplicity and separation of concerns suggests that the input format be canonicalized and that the proxy make sure that the components receive the canonical format.  Later, we can add the general capability of saving images to other image formats, if we like.

That sounds reasonable. But we should get more experience with those other
platforms before  freezing anything.
== Hal
Hal Abelson
@.***
Prof. of Comp. Sci. and Eng.
MIT Dept. of Elec. Eng. and Comp. Sci.
On Fri, Jun 16, 2023 at 2:38 PM Mark Friedman @.***>
wrote:

This is fine for now when were' using only OpenAI. But ai expect we'll
also include other options before too long.
I think that the input format and the output format can, presumably, be
treated separately. I would argue that simplicity and separation of
concerns suggests that the input format be canonicalized and that the proxy
make sure that the components receive the canonical format. Later, we can
add the general capability of saving images to other image formats, if we
like.
—
Reply to this email directly, view it on GitHub
https://github.com/mit-cml/appinventor-sources/pull/2905#issuecomment-1595126807,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAGAXN776DSGAACHBX5JERTXLSRWXANCNFSM6AAAAAAZIODMUM
.
You are receiving this because you commented.Message ID:
@.***>

That sounds reasonable. But we should get more experience with those other platforms before freezing anything.

I don't think that the approach implemented here freezes anything, nor do I believe that it makes it difficult to support the sorts of things that I mentioned in my original reply.  I could be wrong, though. Did you have any specific concerns, Hal?

I haven't looked enough at the platforms to know.
== Hal
Hal Abelson
@.***
Prof. of Comp. Sci. and Eng.
MIT Dept. of Elec. Eng. and Comp. Sci.
On Fri, Jun 16, 2023 at 3:01 PM Mark Friedman @.***>
wrote:

That sounds reasonable. But we should get more experience with those other
platforms before freezing anything.
I don't think that the approach implemented here freezes anything, nor do
I believe that it makes it difficult to support the sorts of things that I
mentioned in my original reply. I could be wrong, though. Did you have any
specific concerns, Hal?
—
Reply to this email directly, view it on GitHub
https://github.com/mit-cml/appinventor-sources/pull/2905#issuecomment-1595145275,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAGAXN65A5XDQW2MKDXBLWTXLST2LANCNFSM6AAAAAAZIODMUM
.
You are receiving this because you commented.Message ID:
@.***>


Development to to Stable

This PR is meant for development before release to main

List before Merge PR :

check startup before setting initial data
check persistent storage for home manga when setup initial data
add default data config in db and add ( db ) to installer
implement Delete Manga
implement Delete Chapter
implement Add Chapter
check download process front end and backed flow ( db )
redesign download and add download log
remove unwanted navigation link or add real placement
refactor some code and make simple test

bug:

Cannot use Vite 5. Bug Custom Image Asset Serve not show on DEV Build.
HMR on current ver. in App.vue need reload.


Remove redirection of stderr when calling credential_process

This PR closes ~#2090~ #1348 by removing the redirection of stderr when spawning a new subprocess with the credential_process command. Since stderr will now be output to the console, we are including the exit code in the error message from botocore.

Codecov Report

Merging #2091 into v2 will increase coverage by 0.02%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##               v2    #2091      +/-   ##
==========================================
+ Coverage   92.71%   92.74%   +0.02%
==========================================
  Files          58       58
  Lines       10714    10714
==========================================
+ Hits         9934     9937       +3
+ Misses        780      777       -3

Impacted Files
Coverage Δ

botocore/credentials.py
98.95% <100.00%> (+0.31%)
:arrow_up:

Continue to review full report at Codecov.

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

Just noticed the following open PRs that address the same problem:

https://github.com/boto/botocore/pull/1835
https://github.com/boto/botocore/pull/1349

Thank you for creating this PR. This feature request is now being tracked here in our cross-SDK repository: https://github.com/aws/aws-sdk/issues/358. Implementations involving credential processing need to be considered across SDKs, so further review is required here. I will link this PR in that issue to reference this as a possible approach.


west.yml: Update CMSIS-Core components to 5.8.0 release

Update the CMSIS-Core components to the CMSIS 5.8.0 release:

* CMSIS-Core(M) 5.5.0
* CMSIS-Core(A) 1.2.1

Signed-off-by: Stephanos Ioannidis<EMAIL_ADDRESS>
CMSIS PR: https://github.com/zephyrproject-rtos/cmsis/pull/11
STM32 PR: https://github.com/zephyrproject-rtos/hal_stm32/pull/113
Closes #37693.

STM32 HAL headers define their own SCB_CFSR fields and these are in conflict with the updated/corrected CMSIS definitions.
/var/lib/buildkite-agent/zephyr-module-cache/modules/hal/stm32/stm32cube/stm32l1xx/soc/stm32l151xba.h:7797: error: "SCB_CFSR_MMARVALID_Pos" redefined [-Werror]
 7797 | #define SCB_CFSR_MMARVALID_Pos             (SCB_SHCSR_MEMFAULTACT_Pos + 7U)    /*!< SCB CFSR (MMFSR): MMARVALID Position */
      |
In file included from /var/lib/buildkite-agent/zephyr-module-cache/modules/hal/stm32/stm32cube/stm32l1xx/soc/stm32l151xba.h:133,
                 from /var/lib/buildkite-agent/zephyr-module-cache/modules/hal/stm32/stm32cube/stm32l1xx/soc/stm32l1xx.h:131,
                 from ../../../../../../soc/arm/st_stm32/stm32l1/soc.h:22,
                 from ../../../../../../include/arch/arm/aarch32/cortex_m/cmsis.h:17,
                 from ../../../../../../include/arch/arm/aarch32/mpu/arm_mpu_v7m.h:10,
                 from ../../../../../../include/arch/arm/aarch32/mpu/arm_mpu.h:13,
                 from ../../../../../../include/arch/arm/aarch32/arch.h:187,
                 from ../../../../../../include/arch/cpu.h:19,
                 from ../../../../../../include/kernel_includes.h:33,
                 from ../../../../../../include/kernel.h:17,
                 from /workdir/zephyr/arch/arm/core/offsets/offsets_aarch32.c:28,
                 from /workdir/zephyr/arch/arm/core/offsets/offsets.c:9:

The duplicate definitions, as long as they are identical, are not problem; but, here the new CMSIS release fixed incorrect definitions and these no longer match the definitions provided by the STM32 HAL (the latter still having incorrect definitions for these).
The incorrect STM32 HAL definitions should be updated accordingly to fix this issue.
cc @erwango @FRASTM

@stephanosio could you please add a note to the release notes, under the "Architectures" section?

UPDATES

Removed the STM32 HAL update commit since the latest STM32Cube update (merged in https://github.com/zephyrproject-rtos/hal_stm32/pull/110) removed the SCB_CFSR definitions.
Added release notes.

Rebased after #37880 was merged.


TITLE: RUBY CAPSTONE PROJECT KANBAN

The link to our capstone project is here.
This team comprises of three members.
@DuaneDave is TEAM MEMBER 1
@kendoriddy is TEAM MEMBER 2
@username-forGithub is TEAM MEMBER 3

Changes Required ♻
Hi @kendoriddy, @DuaneDave, and @username-forGithub,
Nice job, you are almost there.

(Changes Required) Aspects to improve: ♻

[ ] As per this requirement, Please make sure that all kanban cards have a proper description to each card.

[Optional] suggestions:

Nothing to mention.

Every comment with the [OPTIONAL] prefix is not crucial enough to stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear, and please remember to tag me in your question so I can receive the notification**
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

As described in the Code reviews limits policy you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.

Thanks for your feedback @Omar-Muhamad. The necessary corrections have been made.

The link to our capstone project is here.
This team comprises of three members.
@DuaneDave is TEAM MEMBER 1
@kendoriddy is TEAM MEMBER 2
@username-forGithub is TEAM MEMBER 3

Hello @kendoriddy, @DuaneDave, and @username-forGithub
Your project is complete!  There is nothing else to say :shipit:
Congratulations! 🎉 :clap: :clap: :100:

To highlight :champagne:

Good PR description :heavy_check_mark:

Optional suggestions
Every comment with the [OPTIONAL] prefix is not crucial enough to stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.

Invalid Pull Request :red_circle:
Hey Team :wave:
Highlights :1st_place_medal:
✔ Descriptive Issue Title
✔ Descriptive Issue Summary
✔ Following Kanban Board
✔ Following some requirements
Good job on implementing some of the reqirements, But i cannot proceed review on your project there are some issues that you still need to work on :blush:
Optional
All the changes with optional tags are not crucial enough to prevent you from getting the approval but we highly recommend to students that they should take these changes into consideration.
Cheers and Happy coding! :clap: :clap: :clap:
Feel free to leave any questions or comments in the PR thread if something is not 100% clear. Please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

As described in the Code reviews limits policy you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.
Changes

[ ] I can see that this project has been approved last week but this week you have a different team so kindly make a new repo with a new kanban board with a new team :+1:


It's been almost 2 years since the last major update.. is there any realistic date for any new release?

The next release is going to be 1.0, and that takes quite a lot of effort.

I think it is time to name it 1.0 because it became the defacto in python world, now, even hosting PaaS are giving examples by using Flask and not Django, so time to give him some credit ;)

+1

One month before the 2 years mark since the last release.. :)
Yes I understand that is a lot of work.. but still.. How soon is the very soon @mitsuhiko?

Shall we expect anything for this year?!


feat: astro-font - optimize fonts & prevent CLS

Astro Font: https://www.launchfa.st/blog/building-astro-font
Changes
This PR integrates astro-font which automatically generates the fallback font and pass it as the CSS Variable.

We're not interested in using an external lib for this.

Also, per npmtrends, the package is definitely averaging 1500 downloads for the past month!


WIP: DO_NOT_MERGE: test coverage of attacher by ci tests

CI tests are happy with the following two patches:

Rename node-driver-registrar RBAC
Move "leases" from ClusterRole to Role

The third patch removes attacher_role.yaml altogether. Let's how CI tests can detect this.

/test e2e-ibmcloud-csi

/test e2e-ibmcloud-csi

ci/prow/e2e-ibmcloud-csi failed consistently, closing.


fix: application:get_env/2 returns {ok, Value}

Ran into this while trying to use max_clock_skew to investigate something else. This didn't appear to be covered by tests, but happy to add them if you can point me in the right direction.

@paulswartz Good catch.
A test for this would be awesome. We could probably duplicate the retrieve_rs256_with_rotation_test and remove the rotation parts. Instead we can set the nbf / exp fields to slightly expired valuues and use the clock skew to still make it pass.
https://github.com/erlef/oidcc/blob/71896a05aaf7c695a1e66f2fa75e7f1ad77428e1/test/oidcc_token_test.erl#L124

@maennchen thank you for the pointer! I ended up using a simpler test example (less to remove!) but let me know if you don't think that works.


Fix a TLSProxy race condition

TLSProxy starts s_server and specifies the number of client connects
it should expect. After that s_server is supposed to close down
automatically. However, if another test is then run then TLSProxy
will start a new instance of s_server. If the previous instance
hasn't closed down yet then the new instance can fail to bind to
the socket.

Has been merged


Add similar validations from Create for Upgrade cluster operation

Description
We have a set of validations that run for create cluster with provider tinkerbell, we want to have the same validations for upgrade cluster.

Currently we have made Tinkerbell provider specific fields Immutable, #3434. Hence at the moment we do not need validations from create.
Moving to backlog.


Lint/RedundantSafeNavigation doesn't account for ActiveSupport core-ext

I just updated to RuboCop 0.93.0. Lint/RedundantSafeNavigation is suggesting an incorrect action.
mileage&.to_s(:delimited)
       ^^^^^^^^^^^^^^^^^^

RuboCop seems to assume that the & is unnecessary, because nil responds to to_s. The problem is, to_s(:delimited) is a core-ext on Numeric that ActiveSupport adds.
https://github.com/rails/rails/blob/7905bdfd8b2ae50319cd7a9a74ee1f8c865d648d/activesupport/lib/active_support/core_ext/numeric/conversions.rb#L122-L123
>> 123456.to_s(:delimited)   #=> "123,456"
>> nil.to_s(:delimited)
Traceback (most recent call last):
        2: from (irb):2
        1: from (irb):2:in `to_s'
ArgumentError (wrong number of arguments (given 1, expected 0))

Expected behavior
Don't flag these this line.
Actual behavior
It flagged this line.
Steps to reproduce the problem
This code shouldn't get flagged.
val = 123_456
val&.to_s(:delimited)

val = nil
val&.to_s(:delimited)

RuboCop version
Include the output of rubocop -V or bundle exec rubocop -V if using Bundler. Here's an example:
$ [bundle exec] rubocop -V
0.93.0 (using Parser <IP_ADDRESS>, rubocop-ast 0.7.1, running on ruby 2.5.1 x86_64-linux)

I think a solution to this could be to see if nil responds to the method, with an arity of the same amount of arguments that are being handed in. Since I'm handing in 1 argument, but nil.to_s only allows for 0 arguments, it's definitely not a safe alternative.
Things can get tricky though, because what if nil DID respond with 1 argument, but :delimited wasn't an allowed option for NilClass#to_s (or maybe returned a different value)?
The other thing at play here is, what if I don't want an empty string? What if I either want a number that contains a delimiter or nil? The & means that I don't call to_s on a nil at all -- whether nil responds to to_s is irrelevant, because I only want to to_s non-nils. It feels like RuboCop would be pushing me into val.to_s.presence, which is a pointless string allocation and present? regex check.
I'm not sure what to do about this this. I like the intention of this cop for sure. I've seen times in our code where people add an unnecessary & (on methods that don't return nil ever, for example). I just don't know how to implement it in a way that guarantees removing the & won't change the output.

The more I think about it, the more I don't understand the purpose of this cop. I don't understand why it's safe to assume that NilClass responding to a method you call, means you want that method. Even if we were comparing that it's truly the same method (and not one that happens to have the same name), it seems like a bold leap to say that the & is unnecessary. Skipping a method call once we hit a nil is more performant than calling the method.
Does anyone have a real use-case for this cop that isn't foo and bar?
The comments https://github.com/rubocop-hq/rubocop/blob/db37beaf077ab68880b00f37949ebbfb8852bfed/lib/rubocop/cop/lint/redundant_safe_navigation.rb#L6-L23 and PR https://github.com/rubocop-hq/rubocop/issues/8668 don't really mention a case outside of respond_to?.
A few more examples where this cop would erroneously flag:
nil&.blank? # nil for nil, true/false for non-nil
nil&.present? # same as above

The cop I would like (that I don't know is possible) is detecting when & is used on a receiver that can never be nil.

Well, the purpose of the cop is simple - eliminate redundant use of .& for methods that normally operate safely on nil. All the examples for problems are coming from Rails, which I definitely didn't consider when reviewing the cop (e.g. I didn't even know how Rails extended to_s, so we're off the mark for sure. We'll do better with the next iteration. :-)
//cc @fatkodima

The more I think about it, the more I don't understand the purpose of this cop. I don't understand why it's safe to assume that NilClass responding to a method you call, means you want that method.

Well, I guess that depends on your perspective. For me it a method is nil safe tagging its call with .& just confuses the reader, because it implies it's not. I don't think that the example with blank? and present? are good, as lots of people have complained over the years about their API - in particular why isn't nil considered blank? That would be my expectation for such a method. I guess it's clear that I'm not a huge fan of ActiveSupport extensions, but I understand well enough we need to deal with them gracefully given the prominence of Rails.

I think a solution to this could be to see if nil responds to the method, with an arity of the same amount of arguments that are being handed in. Since I'm handing in 1 argument, but nil.to_s only allows for 0 arguments, it's definitely not a safe alternative.

This won't help, because rubocop does static analysis (without loading the actual application code), so we do not have info about what libraries extend which classes and how.

I just don't know how to implement it in a way that guarantees removing the & won't change the output.

We can't, so this is why this cop is marked as Safe: false.

A few more examples where this cop would erroneously flag:

nil&.blank? # nil for nil, true/false for non-nil
nil&.present? # same as above

This cop won't mark those lines as offenses.

I guess my point is, "safe" is a bit debatable. Even with the example given nil&.respond_to?(:to_s) is not the same as nil.respond_to?(:to_s). The first returns nil, the second returns true.
I hope I don't sound ungrateful here. I appreciate this gem. I try to avoid turning off any cops, as I genuinely find them helpful. I'm just trying to understand what some real world examples of this working are.
Basically the goal is anything from Object and BasicObject shouldn't have a & in front of it?

@bbatsov to be clear, nil is blank in Rails. My point was just that nil is not the same as false. In a truthy check it might be fine, but it's definitely not the same return value.
My hope is that this cop wouldn't change the code's meaning. I'm just not sure how to actually make the cop do it well. But I guess that's why I think the only valid version of this cop is one that checks if the receiver can't be nil. But that sounds like a Ruby 3 job, and not something RuboCop can figure out.

I just reread https://github.com/rubocop-hq/rubocop/issues/8668.
What's interesting as well, is next unless attrs && attrs.respond_to?(:[]) may have actually been a performance optimization. Calling respond_to? takes time. So, if the value is falsey, the original code would have skipped the respond_to? call all together.
require 'benchmark/ips'

Benchmark.ips do |x|
  x.report('&&') { nil && nil.respond_to?(:[]) }
  x.report('&.') { nil&.respond_to?(:[]) }
  x.report('.') { nil.respond_to?(:[]) }

  x.compare!
end

Warming up --------------------------------------
                  &&     2.782M i/100ms
                  &.     2.915M i/100ms
                   .     1.361M i/100ms
Calculating -------------------------------------
                  &&     27.578M (± 7.0%) i/s -    139.100M in   5.070451s
                  &.     27.831M (± 5.6%) i/s -    139.903M in   5.043730s
                   .     12.737M (± 6.6%) i/s -     63.974M in   5.045247s

Comparison:
                  &.: 27831229.0 i/s
                  &&: 27578494.0 i/s - same-ish: difference falls within error
                   .: 12736655.0 i/s - 2.19x  (± 0.00) slower

The original code was twice as fast.

nil&.blank? # nil for nil, true/false for non-nil
nil&.present? # same as above

This cop won't mark those lines as offenses.

I was mistaken. Sorry about that.

I think as is, this cop doesn't really satisfy what the rubocop documentation defines as a Lint IMO, given the concerns here and in #8868. I wonder if we should disable the cop by default, if not reconsider it completely, but maybe moving it to the Style namespace as well would be a good move?

I've been pondering this myself, but I've decided to keep the conversation going for a couple of days as I probably won't issue a new release before Sunday/Monday.

I'm sorry I missed that cop in passing, I would have given my 2 cents: this cop makes no sense to me except in potentially super narrow condition?
Only case I can think of:
if anything&.is_a?(anything_else) # or instance_of? (and I don't use instance_of?)
# should be =>
if anything&.is_a?(anything_else)

This example requires the if (or unless/while/until)
I can't think of other circumstances where this cop could intervene in a meaningful fashion.
FWIW, the current bug report is not dependent on ActiveSupport. foo&.to_s is perfectly acceptable code and has no correct equivalent (since nil and "" are very different objects in Ruby).
My conclusion: let's delete this cop and make a bug release ASAP.

@marcandre

I'm sorry I missed that cop in passing

I don't think you have anything to be sorry for. At first glance it looked like a good idea. When it first marked offenses, I thought it was right. But after giving it more thought, I think there's just too many pitfalls.

My conclusion: let's delete this cop, or make an allow list (respond_to? + is_a? + instance_of?) + restrict to conditions and make a bug release ASAP.

I agree. Though, as I mentioned above, it's 2.19x faster to call nil&.respond_to? than nil.respond_to?. I feel this cop might encourage people to write less performant code, which I know performance and readability can be tradeoffs at time, I just don't think the one less & is worth the performance hit. What you guys do is your call, but at this point, I'll personally just disable it if it doesn't get removed soon (I haven't actually accepted the 0.93.0 update PR on my app yet, still running the previous version).
Thanks for all you guys do.

Good points. Apologies guys, I will rework it today to be safe.


Set title text for links to the title of the page

When github is integrated in zulip one can add the option to "translate" PR id's in links. So you can refer to a PR only by it's number like so: #1243
A great extension to this would be the ability to hover the generated link and have a popup that describes the PR (Title and first few lines). This way you don't have to switch to the browser just to figure out for what PR someone is talking about.
I have no experience with electron so I don't know how complex this would be, but it seems flexible enough that it shouldn't be that much of a hustle.
What do you think?

@zulipbot claim

@zulipbot issue is in progress :smile:

@zulipbot creating a PR

@zulipbot abandon


Please allow me to improve styling of login page🧑💻:

:red_circle: Login page enhancement :
:red_circle: In order to make it more attractive to users :
:red_circle: I will try to make login page match with the background theme and will add few needed entries to it.
Screenshots 📷

:white_check_mark: To be Mentioned while taking the issue :

Full name : Raj mehta
What is your participant role? (Mention the Open Source Program name. Eg. GSOC, GSSOC, SSOC, JWOC, etc.)
GSSOC

Happy Contributing 🚀
All the best. Enjoy your open source journey ahead. 😎

@Avdhesh-Varshney please assign me this taks under gssoc level it would be a great help to me

hey @Avdhesh-Varshney can you please assign me this issue. I would like to work on it.


[auto-bump] dependency by nicktobey

:coffee: An Automated Dependency Version Bump PR :crown:
Initial Changes
The initial changes contained in this PR were produced by `go get`ing the dependency.
```
$ cd ./go
$ go get github.com/dolthub//go@
$ go mod tidy
```
Before Merging
This PR must have passing CI and a review before merging.
After Merging
An automatic PR will be opened against the LD repo that bumps the bounties version there.

This PR has been superseded by https://github.com/dolthub/bounties/pull/2767

This PR has been superseded by https://github.com/dolthub/bounties/pull/2768


Fuzzy matching on field names

I would like to use JSON schema to validate human-created JSON documents. While some parts of my schema are strict, some parts of it is lax (additionalProperties set to true). This makes it tricky to really validate documents because people could make a simple mistake, like writing colour instead of color found in the schema. Validation would not catch this because additional properties are allowed, but it is still a bug from the user's perspective.
So it would be great if there could be a way to hook in or have this built-in, that for properties and other values which are not covered by the schema, there could be a custom check, which would then check if something similar does exist in the schema and maybe warn about it.

How would you define "similar"? If you've got a suitably scientific definition, this is certainly possible, though I'm not sure it's related to JSON Schema, unless you're looking to declare that property in a schema. If you're not, just run it on your dicts after you get them.

There are some libraries for this. For example, git also proposes alternative commands if you make a mistake.

I'm not sure it's related to JSON Schema

It is related to JSON Schema validation, but it is not part of the standard. But it is something which would be useful for end-users in my opinion.

unless you're looking to declare that property in a schema

No, there would be no extra information about this in the schema. Schema lists correct property names, but if somebody passes a dict with a similar property name, then validation could show a warning: both because this can be confusing (two fields with very similar names) or because it is a typo.

If you're not, just run it on your dicts after you get them.

I cannot really do this outside of JSON Schema validation (without doing JSON Schema validation myself) because at each location in my data instance, I would have to know which properties are part of the schema and which are not. This is already being done by this validator, so I would have to duplicate work if I would go over dicts myself.

IMHO this would be best handled outside of the jsonschema library. For your use case, you could define a custom validation function for 'properties' by extending an existing validator[1]. Your function could first do your fuzzy check before calling the standard validation function (e.g. [2]) for properties to handle the rest of the process (concretely, look for keys in instance that are 'close' but-not-exact matches to keys in properties with a method of your choosing) .
[1] https://python-jsonschema.readthedocs.io/en/latest/creating/#jsonschema.validators.extend
[2] https://github.com/Julian/jsonschema/blob/master/jsonschema/_validators.py#L294

There are mechanisms for extending validators to add additional behavior to them -- I presume in your case that you'd mean to extend the properties validator to run some fuzzywuzzy thing?
(I'm not sure what you mean to do in cases where your schema doesn't define which properties are allowed, presumably you want to skip that level? jsonschema does not already look at those parts of your instance)

Closing, but lemme know if what it looks like both me and @bsmithers said makes sense :), think you should have the tools you need here already to do this pretty easily.


Refactor errors

wrt https://github.com/seamapi/ruby-next/issues/71 and https://github.com/seamapi/ruby-next/issues/115

Looks like this is still missing a refactor for SeamAuth and SeamOptions?

@razor-x Yea, how the refactor should look like? Should those be also part of Http module?
For ex., SeamAuth -> Seam::Http::InvalidTokenError and Seam::Http.get_auth_headers or Seam::Http::Auth::InvalidTokenError and Seam::Http::Auth.get_auth_headers.
And SeamOptions -> Seam::Http::InvalidOptionsError and Seam::Http.parse_options?

Moving the module into Seam::Http::Auth::InvalidTokenError should be ok. This is all internal, it just didn't make sense before to have a top level SeamAuth module. We can do Seam::Http::Options as well.
Alternatively, Seam::Http::Options and Seam::Http::Auth are classes and Seam::Http::InvalidTokenError and Seam::Http::InvalidOptionsError are thrown by the class. Either approach is fine since these are all internal modules / classes / errors. The user is not meant to handle them in their code like they would the public errors like ActionAttemptFailedError etc.

@razor-x I did the SeamAuth and SeamOptions refactor here fc69841c2c111964dad0a64c02cce82e07e7d689


Some compilers define STDC_VERSION in c++

Some compilers(g++ on Solaris/Illumos) define STDC__VERSION in c++ .
This causes c++ code that uses openssl to break on these compilers since
_Noreturn is not a keyword in c++ .
CLA: trivial

Is this an issue in 1.1.1?

Is this an issue in 1.1.1?
Yes, that is what I found it on.

@paulidale Do you agree it's trivial?

Merged to master and 1.1.1 branches. Thank you for the contribution!


[Relay][Dynamic] OneHot operation

Also includes a refactor of the dynamic-to-static pass to make it a little more modular/a little faster at runtime.
cc: @icemelon9 @zhiics @yongwww @electriclilies
Thanks!

Thanks @mbrookhart @jroesch


Add EquationBlock

How add EquationBlock ?
root_page.children.add_new(EquationBlock, '')
"message", "There was an error (400) submitting the request."

requests.exceptions.HTTPError: Not allowed to edit column: child_list_key

I believe the problem is in the arguments you're passing to the method.
The definition of children:
class Children(object):
    # <snip>
    def add_new(self, block_type, child_list_key=None, **kwargs):
    # ...

You are passing '' as the second argument to add_new, Python assumes that this is child_list_key. Based on the limited context of your issue I assume that this is not your intention.
If, for example, you want to give it a title, you should do it like this:
root_page.children.add_new(EquationBlock, title='')


Feat: use :before as clickable task area (close #436)

Please check if the PR fulfills these requirements

[x] It's the right issue type on the title
[x] When resolving a specific issue, it's referenced in the PR's title (e.g. fix #xxx[,#xxx], where "xxx" is the issue number)
[x] The commit message follows our guidelines
[ ] Tests for the changes have been added (for bug fixes/features)
[ ] Docs have been added/updated (for bug fixes/features)
[x] It does not introduce a breaking change or has a description of the breaking change

Description
Use the :before pseudo-element to detect the clickable area of a task. I decided to not used the line height because it doesn't work properly whith big line height (a part of the task become clickable).
Plus it allow much more customization with CSS.
I also add a preventDefault when the click is valid and in the wysiwyg editor, it prevents the cursor of focusing the task which is not useful at this moment and cause the keyboard to appears on mobile.

Thank you for your contribution to TOAST UI product. 🎉 😘 ✨

I found a fatal error while checking this implementation in several browsers. ':before' selector is not supported in IE10, IE11 and Edge so toggling of task box does not work.
We have to support IE10, IE11 and Edge. So using :before should be changed a different way. 😥

I tested on Edge and it worked (I will double check to be sure) but I couldn't test on IE because it's not installed on my PC.
What wasn't working exactly ? Because I checked the doc and getComputedStyleshould work in IE.

So I checked for Edge and IE(10 and 11) and it works fine on both

I think my test environment was wrong and I was confused because there was no IE in the W3C's :before description. However, when I look it up again, :before is supported by both IE and Edge. When I retest, this code works very well on IE and Edge. Soon I will merge this code.


Missing submodule

Hi, great work! I'm having trouble installing the submodule even I cloned with --recursive. Please help!

same issue, not found;
https://github.com/hustvl/4DGaussians/blob/master/submodules/depth-diff-gaussian-rasterization

I think you can check here for above issue.

Thank you! I will fix the bug soon.


Stable documented output formats

Before 1.0 I want to have stable output formats - in particular for the create command.
I want to provide:

JSON (the current default is OK here)
INI style config that can be written to ~/.AWS
She'll syntax that sets environment variables

Logging messages go to stderr, so even though they are displayed by default if the user does this it will work as expected:
% s3-credentials create hello-simon-world-bucket-2 --format ini --create-bucket > ini.txt
Created user: s3.read-write.hello-simon-world-bucket-2 with permissions boundary: arn:aws:iam::aws:policy/AmazonS3FullAccess
Attached policy s3.read-write.hello-simon-world-bucket-2 to user s3.read-write.hello-simon-world-bucket-2
Created access key for user: s3.read-write.hello-simon-world-bucket-2
% cat ini.txt
aws_access_key_id=AKIAWXFXAIOZADC3B4RA
aws_secret_access_key=acdecuec/lfz56oo4jE2+glHJIAeKmhS3zgXUF2Nc9

With ini in there I don't actually need the one that outputs shell environment variable syntax, because the ini format works for that already.
% source ini.txt
% echo $aws_access_key_id
AKIAWXFXAIOZKGXI4PVO

% cat ini.txt
aws_access_key_id=AKIAWXFXAIOZADC3B4RA
aws_secret_access_key=acdecuec/lfz56oo4jE2+glHJIAeKmhS3zgXUF2Nc9

It turns out this isn't actually a valid INI file - in as much as Python's configparser standard library module refuses to handle it because it's missing the header:
>>> p = configparser.ConfigParser()
>>> p.read("ini.txt")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/simon/.pyenv/versions/3.10.0/lib/python3.10/configparser.py", line 698, in read
    self._read(fp, filename)
  File "/Users/simon/.pyenv/versions/3.10.0/lib/python3.10/configparser.py", line 1086, in _read
    raise MissingSectionHeaderError(fpname, lineno, line)
configparser.MissingSectionHeaderError: File contains no section headers.
file: 'ini.txt', line: 1
'aws_access_key_id=AKIAWXFXAIOZKGXI4PVO\n'

On https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html#cli-configure-files-where the example uses a [default] section header in ~/.aws/credentials:
[default]
aws_access_key_id=AKIAIOSFODNN7EXAMPLE
aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

This would break the source ini.txt trick from https://github.com/simonw/s3-credentials/issues/17#issuecomment-963719461 so I maybe do need a --format env option for outputting environment variables.

I forgot to add --ini support to --duration in #27.


Small source code fix for readability

The code runs fine, the PR is just to improve its readability
Thanks!

Hi Peter,
Thank you for your contribution and attention to readability.
We won't be able to take this PR as it touches a code file that that is used in the documentation build. We will make another pass on documentation code files later. You can leave this PR here for now or remove/re-PR later.
Thx,
Dina

Hi Dina,
NP, thanks!


help

Describe the Bug
hey i didnt knew exactly about this it installed idk what and i wanna remove it now pls help
How can this issue be reproduced?
idk
Expected behavior?
No response
Operating System
Windows 11
Operating System Version
23H2
Logs
WinDebloatTools-2024-03.log

First of all, please don't run scripts/programs if you don't understand what they do to you computer! This is an important internet rule :)
If you want to revert any changes made by the script you can simply follow the steps listed in the README of the main page, in the Usage and Roll-Back sections.
Alternatively, and if you really don't understand or you can't follow the steps, you can always reinstall your operating system.

Thanks @nunessdev, for letting him know what he did wrong, and how to solve the problem in his PC.
Again @YashSoPro, please don't run if you don't want to debloat your computer, then throw a issue which has nothing to do with it's functionality. I'm trying to not be rude, but it is what it is.
It's simple the meaning of the script:

Remove bloatware Apps
Disable Unused Services
Disable Unused Scheduled Tasks
Disable Unused Optional Features
Disable Telemetry a LOT
Use Adwcleaner to scan for adwares and shutup10 to do other tweaks the script won't.
Remove old Windows Features
Do some changes on the UI/UX
Apply tweaks to improve performance


How to show multiple json values in grid.

Laravel Version: 5.5
PHP Version: 7.0
Laravel-admin: 1.5.dev

Description:
I want to show multiple json values in grid.
Ex.
class Product extends Model
{
    protected $casts = ['value' => 'json'];
}

The value's val is as below.
{
"value": [
{
"name": "ABC",
"code": "abc"
},
{
"name": "XYZ",
"code": "xyz"
}
]
}
And I want to show columns in grid.
So I wrote as below.
Admin::grid(Product::class, function (Grid $grid) {
$grid->column("value.name");
$grid->column("value.code");
});

But I have error.
Method Encore\Admin\Grid::__toString() must not throw an exception, caught ArgumentCountError: Too few arguments to function Illuminate\Database\Eloquent\Builder::value(), 0 passed in C:\work\Dropbox\3_Develop\TFS_Exc\ExManagement\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Model.php on line 1470 and exactly 1 expected
And so I wrote as below, but result is that the name and code column is empty.
Admin::grid(Product::class, function (Grid $grid) {
$grid->column("value->name");
$grid->column("value->code");
});

How to write?
Thank you.

So do you want the name field to display ABC or XYZ?  the code field display abc or xyz?

No, sorry.
I want to show like this.

If I write like this, it's error.
Admin::grid(Product::class, function (Grid $grid) {
$grid->column("value.name", 'name');
$grid->column("value.code", 'code');
});
If I write like this, it's all empty.
Admin::grid(Product::class, function (Grid $grid) {
$grid->column("value->name", 'name');
$grid->column("value->code", 'code');
});

If I write like this, it's all NULL.
Admin::grid(Product::class, function (Grid $grid) {
$grid->column("value", 'name')->display(function($value){
return array_get($value, 'name');
});
$grid->column("value", 'code')->display(function($value){
return array_get($value, 'code');
});
});

Dump the variable $value inside display callback, to show how it looks like.

@z-song
I wrote this code.
$grid->column("value", 'name')->display(function($value){
dump('value for name:'.json_encode($value));
$val = array_get($value, 'name');
dump('value name result:'.$val);
return $val;
});
$grid->column("value", 'code')->display(function($value){
dump('value for code:'.json_encode($value));
$val = array_get($value, 'code');
dump('value code result:'.$val);
return $val;
});
And result is as below.

I got the same error

I have one suggestion for this solution.
        $grid->column('column1_not_in_table')->display(function () {
            return json_decode($this->avlue)->map;
        });
        $grid->column('column2_not_in_table')->display(function () {
            return json_decode($this->avlue)->route;
        });


Eureka! crashes game when launching in 1.18.2

Eureka appears to be crashing my game when I launch it in Fabric 1.18.2.  Here is the log:
Log

lithium incompatible

use rubidium in the mean time

they do different things

ah sorry i am used to all the metalic sounding mods being rendering related

The fix for this issue has already been pushed and will be part of the next Curseforge release.


Add test for new wm_metadata.yml

Only merge if the ontology has been fixed so that this passes.  It uses the local copy.

Fan implemented a library that detects the factuality of a predicate using DyNet. The resulting model files are too large and have to be stored separately. Currently Fan is storing them as regular files, but I would like to package them in a jar so we can manage dependencies easier. The problem is that DyNet does not seem to allow the loading of a file from a resource in the classpath. For reference, the method Fan uses (which was copied from yours) is here:
https://github.com/clulab/factuality/blob/master/src/main/scala/org/clulab/factuality/Factuality.scala#L439
This relies on ModelLoader, which seems to accept only a file name:
https://github.com/clulab/factuality/blob/master/src/main/scala/org/clulab/factuality/Factuality.scala#L461
Can you think of a fix? Can we modify ModelLoader in DyNet? Alternatively, we could write code to pull the content of the “.rnn” file from the jar and store it as a regular file, but that is super ugly.

Right, so DyNet being written in C++ doesn't know what to do with a
Java .jar file at all.  DyNet gets the file contents via an ifstream
(input file stream) from the operating system:
std::ifstream datastream(dataname, std::ios_base::in | std::ios_base::binary);
It looks like there might be some C++ libraries that can process a
zip file as an ifstream.  In Scala/Java we'd have to figure out which
.jar file the resource was stored in and pass that file name, almost
as usual, plus the name of the resource, so
ZipModelLoader(findJarFor("something.rnn"), "something.rnn").  C++
would need a new class like ZipFileLoader, and that doesn't seem too
difficult.  The DyNet project has already been forked and all.
Getting access to ZipFileLoader up through the Java and Scala layers
would hopefully only require some copy, paste, and rename operations.
It seems reasonable if the C++ library can be found, and it's 64-bit,
and it's cross-platform, etc.
How big is this model?  There has not yet been any reaction to the new
issue about large models: https://github.com/clab/dynet/issues/1558


Formatting clean and organized code

@somyadipghosh ma'am
to fix all the elements of home page, i need to organize the code for better readability and clean look.
As the current code is too messed and unorganised.
There is no proper follow up of tags where to be used and where not, it will require alot effort to fix this.
kindly assign this to me with higher level so that i can proceed further.

 I'm so sorry sir...
okay, i'm working on it.