bugfix: penalizers to be merged before reqs

Thank you for your contribution, we really appreciate it. The following instructions will help improve your pull request and make it easier to receive feedback. If there are any items you don't understand, don't worry. Just submit the pull request and ask the maintainers for help.
Motivation
I've running the latest sglang with #973 merged in our production environment. After serving several request, critical bug has been just found around 1 hr ago. The bug is raised during penalizer_orchestrator.merge() and only when the batch.reqs gets extended before the penalizers getting merged.

Show exception logs
2024-08-09T09:20:41.072998301Z Exception in ModelTpServer:
2024-08-09T09:20:41.073078821Z Traceback (most recent call last):
2024-08-09T09:20:41.073083661Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/managers/tp_worker.py", line 222, in exposed_step
2024-08-09T09:20:41.073087291Z     self.forward_step()
2024-08-09T09:20:41.073091221Z   File "/usr/local/lib/python3.10/site-packages/torch/utils/_contextlib.py", line 116, in decorate_context
2024-08-09T09:20:41.073094361Z     return func(*args, **kwargs)
2024-08-09T09:20:41.073097261Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/managers/tp_worker.py", line 251, in forward_step
2024-08-09T09:20:41.073100071Z     self.forward_decode_batch(self.running_batch)
2024-08-09T09:20:41.073103931Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/managers/tp_worker.py", line 597, in forward_decode_batch
2024-08-09T09:20:41.073107581Z     next_token_ids = batch.sample(output.next_token_logits)
2024-08-09T09:20:41.073110821Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/managers/schedule_batch.py", line 742, in sample
2024-08-09T09:20:41.073113451Z     logits = self.penalizer_orchestrator.apply(logits)
2024-08-09T09:20:41.073115941Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/sampling/penaltylib/orchestrator.py", line 99, in apply
2024-08-09T09:20:41.073118741Z     logits = penalizer.apply(logits)
2024-08-09T09:20:41.073121161Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/sampling/penaltylib/orchestrator.py", line 271, in apply
2024-08-09T09:20:41.073127541Z     return self._apply(logits=logits)
2024-08-09T09:20:41.073130361Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/sampling/penaltylib/penalizers/frequency_penalty.py", line 62, in _apply
2024-08-09T09:20:41.073134191Z     logits -= self.cumulated_frequency_penalties
2024-08-09T09:20:41.073136891Z RuntimeError: The size of tensor a (2) must match the size of tensor b (3) at non-singleton dimension 0
2024-08-09T09:20:41.073139491Z
2024-08-09T09:20:41.073188501Z Exception in ControllerSingle:
2024-08-09T09:20:41.073213241Z Traceback (most recent call last):
2024-08-09T09:20:41.073218912Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/managers/controller_single.py", line 166, in start_controller_process
2024-08-09T09:20:41.073223121Z     controller.loop_for_forward()
2024-08-09T09:20:41.073226661Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/managers/controller_single.py", line 103, in loop_for_forward
2024-08-09T09:20:41.073230581Z     out_pyobjs = self.tp_server.exposed_step(recv_reqs)
2024-08-09T09:20:41.073235462Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/managers/tp_worker.py", line 222, in exposed_step
2024-08-09T09:20:41.073239082Z     self.forward_step()
2024-08-09T09:20:41.073243042Z   File "/usr/local/lib/python3.10/site-packages/torch/utils/_contextlib.py", line 116, in decorate_context
2024-08-09T09:20:41.073246682Z     return func(*args, **kwargs)
2024-08-09T09:20:41.073249262Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/managers/tp_worker.py", line 251, in forward_step
2024-08-09T09:20:41.073252592Z     self.forward_decode_batch(self.running_batch)
2024-08-09T09:20:41.073255712Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/managers/tp_worker.py", line 597, in forward_decode_batch
2024-08-09T09:20:41.073258892Z     next_token_ids = batch.sample(output.next_token_logits)
2024-08-09T09:20:41.073261982Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/managers/schedule_batch.py", line 742, in sample
2024-08-09T09:20:41.073264542Z     logits = self.penalizer_orchestrator.apply(logits)
2024-08-09T09:20:41.073267202Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/sampling/penaltylib/orchestrator.py", line 99, in apply
2024-08-09T09:20:41.073269632Z     logits = penalizer.apply(logits)
2024-08-09T09:20:41.073272092Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/sampling/penaltylib/orchestrator.py", line 271, in apply
2024-08-09T09:20:41.073274772Z     return self._apply(logits=logits)
2024-08-09T09:20:41.073277212Z   File "/usr/local/lib/python3.10/site-packages/sglang/srt/sampling/penaltylib/penalizers/frequency_penalty.py", line 62, in _apply
2024-08-09T09:20:41.073292912Z     logits -= self.cumulated_frequency_penalties
2024-08-09T09:20:41.073296432Z RuntimeError: The size of tensor a (2) must match the size of tensor b (3) at non-singleton dimension 0

Modification

Updated ScheduleBatch to merge penalizer_orchestrator first, before self.reqs.extend().
Added test cases that will fail before this patch, and passing after this patch.
Added thorough comments regarding why penalizer_orchestrator.merge() should happen before.

Checklist

[x] 1. Ensure pre-commit pre-commit run --all-files or other linting tools are used to fix potential lint issues.
[x] 2. Confirm that modifications are covered by complete unit tests. If not, please add more unit tests for correctness.
[x] 3. Modify documentation as needed, such as docstrings or example tutorials.

@Ying1123 @zhyncs @merrymercy Could you PTAL? This fixes critical bug regarding penalty logic, currently on main btanch.


roundcube: 1.3.10 -> 1.4.0

Motivation for this change
https://roundcube.net/news/2019/11/09/roundcube-1.4.0-released

curl cmd in the test can fail as roundcube returns a http/401 if
unauthorized (and we're explicitly requesting the login form). By
checking if the persistent_login plugin is loaded, the assertion is
still valid.

Use $argv[0] to determine install path in the installer script. I'm
not exactly sure why, but it seems as __DIR__ now resolves symlinks
which breaks the installer if roundcube is in a buildEnv with
third-party plugins.

Things done

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

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

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

Hey, I checked out the PR and ran the NixOS test roundcube.nix and it worked fine.

I have an error at the moment on the Roundcube setup
Executing database schema update.
Updating database schema<PHONE_NUMBER>)... [FAILED]
ERROR: Error in DDL upgrade<PHONE_NUMBER>: [7] ERROR:  relation "rcsystem" already exists
Main process exited, code=exited, status=1/FAILURE

I'm going to look in detail tomorrow
Thanks for the PR

Hmm, would you mind sharing your configuration (and which version of nixpkgs are you using?).
I deloyed this patch to a machine which uses release-19.09 and I didn't encounter any migration issues.

So I move from roundcube 1.3.10 to 1.4.0 with a 19.09-small version of nixpkgs. It's seem that this type of error already occured https://github.com/roundcube/roundcubemail/issues/6034
So I search on database update script side. I'll keep you informed.

Any updates?


Grafana on EOX-Hub: Data Access

I startet investigating Grafana and tried to create dashboards to data stored on the EOX Hub.
A significant amount of data and results from our Use Case are stored as csv files and is not connected to or stored in a database, we are using the suggested PlugIn to source our data (Infinity data source) which can handle csv tables.
One can either upload from a local source (not Hub but machine) or provide an URL to a file, which in our case would be a link to the file in EoxHub e.g. "https://eoxhub.fairicube.eu/user/sonjastndl/.../.../s3/.../data/data.csv" that cannot be accessed because it requires a login.
Is there any other way to provide Hub-stored data?

Do I interpret your question correctly, that you want to publicly share your Grafana dashboard and thus use a method without authentication? Reading the Grafana documentation (https://grafana.com/docs/grafana/latest/dashboards/dashboard-public/) I believe you can use any of the available methods and still publicly share the resulting dashboard.
Sorry if I interpreted you question wrongly.

It's less about sharing Dashboards. If possible, we preferredly would like to use processed and stored on the EOX Hubto create these Dashbords. So far I understand that the EOX Hub Grafana instance is not directly connected to the Hub and one would have to provide a Web URL to the data (if not database). Connection then fails due to authentification.
If this is not possible, we need to consider creating a database in order to create dashboards.

Hi Sonja, i just found this in our FAIRiCUBE documentation
https://fairicube--8.org.readthedocs.build/en/8/guide/storage/
The currently available services are:
Direct access to the objects via S3 API
HTTPS file access provided via [AWS CloudFront CDN](https://aws.amazon.com/cloudfront/), which supports capabilities like custom domains, security, availability, and even adding own ones via lambda functions
Time-limited sharing via [presigned URLs](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-presigned-url.html)

maybe we have to learn more about that ourselves?


Use fixed versions for requirements in lakefile

Issue #, if available:
Description of changes:
Use fixed versions for requirements in lakefile

Does this fix the recent docs deployment failures? (E.g., https://github.com/cedar-policy/cedar-spec/actions/runs/9490260397/job/26153788975)

I think the new version will (but we don't run it until after merging, so who knows).


docs: Add more vector store examples in quickstart

@cbornet We're wary about highlighting any particular provider in the quick start unless the provider is extremely popular (e.g., open ai / anthropic). CC @baskaryan  / @efriis for opinion

@cbornet yeah confirmed -- we've already removed providers from the quick start because multiple vectorstore providers wanted to be featured there, so we settled for only having a local vectostore in the quick start

OK, I understand.
My idea was to propose multiple vector stores like what is done for the LLMs;
Then I'll propose a PR to use the in-mem vectorstore to be completely vendor neutral.
And link to the vector store integration page;

Agree adding link to integrations page
Let me confirm about substituting the memory vectorstore over FAISS. I'm not sure if we want to have at least some version of a local vectorstores for users that are prototyping locally (https://python.langchain.com/docs/get_started/quickstart/#retrieval-chain).

@cbornet I think it makes sense to keep FAISS at least for now -- it's a well known library for data science and it's available for free for folks prototyping locally. It's not necessarily what folks will choose to go into production with. Our main concern here would be if the FAISS implementation in langchain has problems that hurt usage.

Happy to add tabs of in memory + faiss if that's of concern, or switch faiss to inmemory in the quickstart.
But let's avoid a race to add provider vector stores to the quickstart
Happy to review a different PR that just links to the list of vectorstores (similar to the additions of links for embedding models and other sections earlier in the page edit).


Price changes no longer shown when switch varation selector

The js and associated div id that used to allow prices to change when a different variation was selected in the product block has been removed.
Is this deliberate or an oversight?

I recall there was some re-working of the javascript at some point, so it didn't depend on an ID to reference the product block. I think this was to avoid having to have custom javascript on the page for each block, and instead shift that scripting to a common JS file.
Could this explain what you are seeing?  Some older javascript perhaps?
I'm using the latest release right this moment, with products with variations that change the price, and that's working as expected on the product block.

Just tested this on a clean install and it works fine - we obviously have some old and new code mixed in our custom template.


Month Year dropdown closes

Hi,
When I open datepicker in a popup mode and click on Month or Year dropdown text, (not on the side arrow), select dropdown comes and disappers in a second. But if i keep pressing the dropdown for more than 2 seconds, dropdown comes as normal.
Can anyone help me with this? Thanks.

This is not reproducible in the demo page. Are you able to reproduce it in demo page also?

No. This only comes in mobile phone.

Its possible to reproduce the issue with chrome device inspection. It makes the dropdowns nearly unusable. The whole label should be clickable.

I tested in device too. I am able to open the dropdowns.


A100 80GB SKU/Size name inconsistence issue

[Enter feedback here]
A100-80GB SKU name is inconsistent between Azure Doc and Azure HPC team's naming.
Azure Doc: Standard_ND96amsr_v4
Azure HPC: Standard_ND96amsr_A100_v4
To the best of our knowledge, Standard_ND96amsr_A100_v4 is the right name for now, especially from provisioning perspective.

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

ID: 77bff2c8-4000-cffe-c464-a09c2fbfa4a5
Version Independent ID: 3cb74068-aba0-c96e-bb8c-a31efae3965b
Content: NDm A100 v4-series - Azure Virtual Machines
Content Source: articles/virtual-machines/ndm-a100-v4-series.md
Service: virtual-machines
Sub-service: vm-sizes-gpu
GitHub Login: @sherrywangms
Microsoft Alias: sherrywang

@superlerain
Thanks for the feedback! I have assigned the issue to content author to check and update the document as appropriate.

@sherrywangms
Can you please check and add your comments on this doc update request as applicable.

#please-close It looks like this issue has been resolved. I can't find any references to the version without A100.


doc updates

Docs Build status updates of commit 269e9c8:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

Advertising/bingads-13/bulk-service/account-action-ad-extension.md
:white_check_mark:Succeeded

Advertising/bingads-13/campaign-management-service/addbidstrategies.md
:white_check_mark:Succeeded

Advertising/bingads-13/campaign-management-service/bidstrategy.md
:white_check_mark:Succeeded

Advertising/bingads-13/campaign-management-service/getbidstrategiesbyids.md
:white_check_mark:Succeeded

Advertising/bingads-13/campaign-management-service/googleimportoption.md
:white_check_mark:Succeeded

Advertising/bingads-13/campaign-management-service/updatebidstrategies.md
:white_check_mark:Succeeded

Advertising/bingads-13/guides/mixed-campaigns.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


npm install --force

npm ERR! gyp ERR! configure error
npm ERR! gyp ERR! stack Error: gyp failed with exit code: 1
npm ERR! gyp ERR! stack     at ChildProcess.onCpExit (C:\Users\Winter\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\configure.js:351:16)
npm ERR! gyp ERR! stack     at ChildProcess.emit (events.js:375:28)
npm ERR! gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:277:12)
npm ERR! gyp ERR! System Windows_NT 10.0.19043
npm ERR! gyp ERR! command "D:\Program Files\nodejs\node.exe" "C:\Users\Winter\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild"
npm ERR! gyp ERR! cwd D:\InspuraccfunPro\ant-design-pro\node_modules\utf-8-validate
npm ERR! gyp ERR! node -v v14.17.1
npm ERR! gyp ERR! node-gyp -v v7.1.2
npm ERR! gyp ERR! not ok

Hi. Thanks for reporting issue. Please formate issue accroding to default template and provide output of your original command with addition of --verbose flag.

Did you solve the problem？And how to solve it?

This issue seems no longer relevant as it uses a no longer supported version of Node and has been stale for a long time. If there are no objections, I will close this issue next Mon-Tue. In case something similar happens again please open a new issue.


Add HD compact grid support to Salt Next

Resolving this issue will add HD compact grid support to the Salt Next Figma library.
The challenge to resolve here is that HD compact cannot be added as a density, as it won't be available to other components (it's unique to grid).
There are two approaches being explored here:

Variable driven approach: A Figma only grid row height variable collection which sets row height to tokens: default or compact (for HD only). Risk: grid row height can be applied to any density grid (ie., row height for any density can be set to the HD compact height)–mitigated by clearly stating 'HD only' token name.
Component props driven approach: An additional component to drive height of HD cells only. Risk: needs to be set per header/cell component–mitigated by providing clear guidance and HD compact grid stickers.

@pseys for reference.

Current spec row height currently excludes border between rows, so we need to configure ag grid with +1 number to be on spec. MTK has HD compact correct, but other densities wrong, which they will fix

Cortado Goal:
Update spec

kick off w/ Paul scheduled for 06/08

Using variable driven solution. @pseys to add relevant variables for row height in Styles library before the component can be updated.

Aug 14 - @pseys  to add a variable to the Figma library.

Needs result from #3996

Figma variables have been created in a branch and are ready to merge. Waiting on a resolution to #3996 before progressing.

Espresso Goal : released by 13th September

Figma variables updated and published ready for Nav to reference in the Data Grid component. Two new 'Figma only' variables are available: rowHeight and contentHeight

Released on 23rd September. Full release notes.


Create alternative to std_msgs/Float64MultiArray in ForwardCommandController & family

Problem:
std_msgs/Float64MultiArray is deprecated.
# This was originally provided as an example message.
# It is deprecated as of Foxy
# It is recommended to create your own semantically meaningful message.
# However if you would like to continue using this please use the equivalent in example_msgs.

# Please look at the MultiArrayLayout message definition for
# documentation on all multiarrays.

MultiArrayLayout  layout        # specification of data layout
float64[]         data          # array of data

https://github.com/ros2/common_interfaces/blob/foxy/std_msgs/msg/Float64MultiArray.msg
Proposal:
Create (an) alternative in control_msgs. This could be a set of messages with a single joint interface type, one supporting multiples, or one message that has a field for the joint interface type and one that is fully dynamic --- (dynamic joint states??).

std_msgs/Float64MultiArray is deprecated.

yeah, this really should have been given some more attention.
See SOSS: a whole new approach to your ROS 1-ROS 2 bridge! where this was casually dropped in an off-topic discussion. "It's in the release notes, we can't do anything more" (which is true, it's mentioned in the notes, but I doubt many people have seen those).

Agreed. I don't think I've ever read the release notes of a ros distro 😓

Yeah, I also had no idea, and although I looked at this message a few times, I didn't read its header. Actually, a ROS newcomer I was helping pointed me into this...
This should be a massive topic on ROS discourse...

Feel free to bring it up again.
I've directly asked for an announcement. The response was:

It's in the release notes, we can't do anything more

Any update on this?

Well it's deprecated but still around... If you want to introduce something for this yourself you are welcome to submit a PR to control_msgs


this.stopListening() does not work

The this.stopListening() method on the server does not work.

Fixed in version 3.0


questions

can the code run 3256256？?Why did I train for a week and it didn't work??

256resolution of images

Hi, I am really sorry for this. Since I have tried to implement PyTorch version with the same as TF version, there are still some uncontrollable part which is hard to debug. I still work on this, the main problem is in ModulatedConv2d. If you are interested in fix it, it would be great! Thanks a lot and happy new year :)

the code now can run what resolution

i hava train for a long time ,i dont konw should i need to continue

@tomguluson92 While seems there were another pytorch implementation which they got reasonable results


Add travis test for javadoc generation

Because popgenlib is a library that at some point will have a javadoc stored somewhere, we should be sure that our javadoc is not broken.
Ideally, we should have two tests in travis independent of each other to make simpler the review:

Build and test the library.
javadoc generation.

Or maybe even separate the build and the test, to make even simpler the review.

Closed by #14


Allow to pass an object of modelModifiers to native inputs

What problem does this feature solve?
Native inputs support v-model modifiers lazy, number and trim.
However, most of the time, people use a wrapper around their inputs.
According to the docs you can add modelModifiers to your custom component so thats not the problem.
However, it is impossible to pass all modifiers from the wrapper component down to the unerlying native input.
<template>
  <!-- not working -->
  <input v-model.modelMofidiers="value" />
</template>

<script setup>
defineProps({
  modelValue: String,
  modelModifiers: Object
})
</script>

There is just no working syntax.
What does the proposed API look like?
<template
  <input v-model.[modelModifiers]="value" />
</template>

+1 for this, seem odd in order to simply wrap an input and provide support for .lazy you need to this:
<script setup lang="ts">
import { defineModel } from 'vue'

const [model, modifiers] = defineModel<string>()

function input(event: Event) {
  if (modifiers.lazy) {
    return
  }
  model.value = (event.target as HTMLInputElement).value
}

function change(event: Event) {
  if (!modifiers.lazy) {
    return
  }
  console.log(event, modifiers)
  model.value = (event.target as HTMLInputElement).value
}
</script>

<template>
  <input :value="model" type="text" @input="input" @change="change" />
</template>


Don't add HESA data to every API response

Context
We only want to return HESA data when an application choice has a status 'recruited'
Changes proposed in this pull request

Remove the hard-coded hesa attribute from SingleApplicationPresenter. This was overriding the conditional logic responsible for determining whether HESA data should be returned. 😢
Only return HESA data if the application choice has a status 'recruited' ('enrolled' is no longer used)
Add test coverage

Guidance to review
Make sense?
Link to Trello card
https://trello.com/c/uGBOx0F8/2933-dont-add-hesa-data-to-every-api-response
Things to check

[x] This code does not rely on migrations in the same Pull Request
[x] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[x] API release notes have been updated if necessary
[ ] New environment variables have been added to the Azure config

This is great, thank you @TobyRet!
One very minor style q inline.
And I wonder if for consistency we should set hesa_itt_data explicitly to nil in line with the other top-level attrs in the API? e.g. we always include rejection and withdrawal but they can simply be nil if those things haven't happened. I quite like that pattern because it avoids surprises later.

Good point - have made changes to reflect the above

This is great, thank you @TobyRet!
One very minor style q inline.
And I wonder if for consistency we should set hesa_itt_data explicitly to nil in line with the other top-level attrs in the API? e.g. we always include rejection and withdrawal but they can simply be nil if those things haven't happened. I quite like that pattern because it avoids surprises later.

Good point - have made changes to reflect the above


AccessLint posting duplicate errors

AccessLint is posting errors twice as seen in https://github.com/18F/accessibility/issues/166 and https://github.com/18F/accessibility/pull/167#issuecomment-271734221. It should only post errors once.
Any idea why this is happening and how to resolve this?

@maya I'm taking a look 👀

@ckundo I'm not positive, but think it may be related to our search plugin processing files twice: https://github.com/18F/jekyll_pages_api_search/issues/37#issuecomment-271955021

Closing, as we've taken AccessLint in a new direction. Check out our GitHub App: https://www.accesslint.com/


Missing protocol in @Reference annotation

Field protocol missed in the @Reference annotation.
But ServiceConfig has protocol.  API way.
We prefer the annotation(Spring Boot).
Could you please help add the protocol in the @Reference?

Hi, I have check the code:
https://github.com/apache/incubator-dubbo/blob/d8282fe1b8075a453c7b44b4ae7982a4285df7b7/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/annotation/Reference.java#L258
It has been supported.


harmonia: 0.8.0 -> 1.0.0

Description of changes
Reference: #332957

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

I assumed the release was cut to fix the time regression.
I guess it didn't make it in.
Thank you for the report @t184256, it should be fixed soon.

I was too confident that dependabot would have included this.


Add common language names for translations

https://github.com/tabatkins/bikeshed/blob/master/docs/metadata.md says "Translation indicates a translation of the document. At minimum it consists of a language code (BCP47 format) and a url.", but when I tried just 'ja' it didn't fill in "Japanese" and "日本語".

That's done by the languages.json file in bikeshed/spec-data/readonly. I've only got a few in there right now, because I only knew a handful of language names off the top of my head. Patches welcome. ^_^

Done. It'd be nice if Bikeshed would warn when it finds a language it doesn't know, and point at the file to add it to.

Good idea. I'll log a warning when Bikeshed can't fill in the holes.

And done. Thanks for the suggestion!

FYI, https://api.csswg.org/bikeshed/?url=https://raw.githubusercontent.com/jyasskin/web-bluetooth-1/jp-translation/index.bs&output=both hasn't caught the new language code. When I ran bikeshed update locally, I had to manually delete bikeshed/spec-data/languages.json to get it to be copied from readonly/languages.json.

Oh, duh, sorry, I have to bump the data version number.


Small comments on .gitignore

Dear authors,
Thank you very much for sharing the source code of the paper. Indeed, the method presented in the paper is very interesting and the results look promising.
I have two small comments regarding the organization of this repository. I could see that python compiled files (i.e., .pyc, __pycache__) and Jupyter notebook checkpoints (i.e., .ipython_checkpoints) are also committed to this repo. I believe the standard practice is to not include these files in a Git repository.
Additionally, I think it would be helpful to include a requirements.txt listing the required python packages to run this repo. I would be more than happy to open a pull request for these changes.
My 2 cents!
Best,

Thanks for your response, it would be nice if you help refine this repository. Looking forward to your pull request.


[improve][broker] Optimize seeking by timestamp

Fixes https://github.com/apache/pulsar/issues/22129
Main Issue: #xyz

PIP: #xyz

Motivation
Optimize seeking by timestamp
Modifications
Add a new method to ManageCursor.
Verifying this change

[ ] Make sure that the change passes the CI checks.

(Please pick either of the following options)
This change is a trivial rework / code cleanup without any test coverage.
(or)
This change is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end deployment with large payloads (10MB)
Extended integration test for recovery after broker failure

Does this pull request potentially affect one of the following parts:

If the box was checked, please highlight the changes

[ ] Dependencies (add or upgrade a dependency)
[ ] The public API
[ ] The schema
[ ] The default values of configurations
[ ] The threading model
[ ] The binary protocol
[ ] The REST endpoints
[ ] The admin CLI options
[ ] The metrics
[ ] Anything that affects deployment

Documentation

[ ] doc
[ ] doc-required
[x] doc-not-needed
[ ] doc-complete

Matching PR in forked repository
PR in forked repository: https://github.com/dao-jun/pulsar/pull/8

Let's avoid cherry-picking this change so that we don't introduce regressions for current maintenance branches.

I think we need test cases to cover the various corner cases with this solution.

I agree with you, but before I complete the tests, I need to know if this change is reasonable.

I think we need test cases to cover the various corner cases with this solution.

I agree with you, but before I complete the tests, I need to know if this change is reasonable.

The general approach looks good to me.

@dao-jun one challenge is that the ledger's timestamp is the broker's clock, but the seek uses the message publish time which is using the client's (publisher's) clock. There might be additional corner cases because of this.
Any thoughts on that? Perhaps documenting this is sufficient?
Having a configuration toggle to choose between the new and old method could be useful for users that face regressions?

@dao-jun one challenge is that the ledger's timestamp is the broker's clock, but the seek uses the message publish time which is using the client's (publisher's) clock. There might be additional corner cases because of this. Any thoughts on that? Perhaps documenting this is sufficient? Having a configuration toggle to choose between the new and old method could be useful for users that face regressions?

Yes, it's truly a problem. The client's clock may not be consistent with the broker's clock. I'd seen a similar PR before(https://github.com/apache/pulsar/pull/21940).
Even though user's could use brokerTimestamp to seek the position, but it requires enabling AppendBrokerTimestampMetadataInterceptor, and it is disabled by default.
Perhaps as you said, we need to add a new configuration to  determine use LedgerInfo to speed up seeking or not.
But, what about using ServiceConfiguration#brokerEntryMetadataInterceptors to determine speed up or not?
I mean, if ServiceConfiguration#brokerEntryMetadataInterceptors contains AppendBrokerTimestampMetadataInterceptor, enable speed up seeking by using LedgerInfo, else, disable.
Then we don't need to add a new configuration item, since pulsar broker has toooo many configuration items......

But, how about using ServiceConfiguration#brokerEntryMetadataInterceptors to determine speed up or not?
I mean, if ServiceConfiguration#brokerEntryMetadataInterceptors contains AppendBrokerTimestampMetadataInterceptor, enable speed up seeking by using LedgerInfo, else, disable.
Then we don't need to add a new configuration item, since pulsar broker has toooo many configuration items......

I think it's better that the admin of the broker could decide about this.
A possible mitigation would be to track the publish timestamps of the first and last message and possible also min and max and store that in the ledger metadata. If this metadata is present, that could be used in the initial ledger selection.

A possible mitigation would be to track the publish timestamps of the first and last message and possible also min and max and store that in the ledger metadata. If this metadata is present, that could be used in the initial ledger selection.

it might be a problem, 'cause we don't know the timestamp of seek is brokerTimestamp or publishTimestamp, right? If we record publish end/start timestamp to LedgerInfo, how can we decide which to use?

I would assume that in the current interface, it's always the publish timestamp.

@lhotari
how about add a new method seek(long timestamp, boolean speedUp) to Consumer api?
If speedUp=true, enable speed up seeking by using LedgerInfo, else, disable.
It should be more flexible

@lhotari how about add a new method seek(long timestamp, boolean speedUp) to Consumer api? If speedUp=true, enable speed up seeking by using LedgerInfo, else, disable. It should be more flexible

I don't think that this should be exposed to clients at all. It should be a broker level config. The alternative is to add the metadata of publish time min, max, first, last to the ledger metadata which would always provide the correct answer.

@lhotari how about add a new method seek(long timestamp, boolean speedUp) to Consumer api? If speedUp=true, enable speed up seeking by using LedgerInfo, else, disable. It should be more flexible

I don't think that this should be exposed to clients at all. It should be a broker level config. The alternative is to add the metadata of publish time min, max, first, last to the ledger metadata which would always provide the correct answer.

msg publishTime is a broker level concept, pass it to ML doesn't make sense. Add a new config is better.
seems I have to draft a PIP......

msg publishTime is a broker level concept, pass it to ML doesn't make sense. Add a new config is better. seems I have to draft a PIP......

I disagree that "pass it to ML doesn't make sense". it's already passed in and used to evaluate seek. There would need to to have the min, max, first and last publishTime in the ledger metadata to reliably optimize the current solution. It does need a PIP most likely, but that's not a problem to make a PIP.

I disagree that "pass it to ML doesn't make sense". it's already passed in and used to evaluate seek. There would need to to have the min, max, first and last publishTime in the ledger metadata to reliably optimize the current solution. It does need a PIP most likely, but that's not a problem to make a PIP.

@lhotari
Current add entry apis of ManagedLedger likes addEntry(ByteBuf entry) , if we want to pass publishTime to ML, should I change the API to addEntry(ByteBuf entry, long publishTimestamp)?
If not, should I decode the entry metadata and get the publishTime? If it's the case, I think it would comes more cost.
And if we set field publishTime into LedgerInfo, we will also face the challenge of ML complexity.
At the same time, we also need additional logic to maintain the publishTime for each Ledger, I think this implementation is not lightweight enough.
So I believe add a new configuration to brokerConf is a better way, what do you think?

@lhotari I've updated the implementation, PTAL

What is the status of this PR? I'm interested in it. I can help to impl it too.


⚠ Bofrost.fr has degraded performance

In 4522491, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1460 ms

Resolved: Bofrost.fr performance has improved in d4257f1 after 7 minutes.


feat: add vue sfc typescript module declare

Add .vue sfc typescript module declare file to avoid error like Cannot find module './App.vue' or its corresponding type declarations.ts(2307).

This is not needed. Follow the recommended setup and TS can actually get the type of the Vue files being imported.

This is not needed. Follow the recommended setup and TS can actually get the type of the Vue files being imported.


Updating podspec to use SwiftCBOR as name

I also updated some settings so the macOS build target should work again.

I don't like the bump to 0.3.1, 0.3.0 happened just an hour ago or so. Re-released 0.3.0 with these changes, you can push the pod now!


(Suggestion) T-flipflop

Basically, just a logic item that toggles every rising edge of the input.

I believe Critfish already has an issue for this


Infinity Catalyst became real infinity

In server, after I placed and removed any kind of items in the Extreme Crafting Table, I was able to obtain Infinity Catalyst constantly in the output section

fixed


Missing location information

Describe the bug
Whe trying to search by location, I quickly see the spinner, and then nothing happens. It looks like if there was no location information in the pictures, but of course this is not the case
To Reproduce
Steps to reproduce the behavior:

Import any pictures in albums
Click on Search
Click on Location
Empty page appers

Expected behavior
I should see a map with pictures positioned on it
Screenshots

Smartphone (please complete the following information):

Device: Samsung Galaxy A51
OS: Android 13, One UI 5.0

To assist debugging, could you please post here one of those pictures which has GPS location while Les Pas can't find it? if privacy is the concern, you can send me email at<EMAIL_ADDRESS>

Hi, I just sent you an email with an example picture
Il Mar 10 Gen 2023, 14:20 scubajeff @.***> ha scritto:

To assist debugging, could you please post here one of those pictures
which has GPS location while Les Pas can't find it? if privacy is the
concern, you can send me email at @.***
—
Reply to this email directly, view it on GitHub
https://github.com/scubajeff/lespas/issues/102#issuecomment-1377253619,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAO7GQUTAE6ZDFQPWYEIGH3WRVO27ANCNFSM6AAAAAATWS5FVE
.
You are receiving this because you authored the thread.Message ID:
@.***>

Bug confirmed.

Further investigation shows that even Linux application like exiftool, gimp, nautilus on latest ubuntu couldn't read GPS information from the file.

That's pretty interesting. My phone shows location information on the gallery, so it must be stored somewhere.
I thought maybe it was stored in some external database, so I forwarded the same email to a different account to check on a different Android phone (Samsung Galaxy S22) and indeed I see the location in the gallery on the other phone as well. This means that the information must be in the file somewhere.
I will let you know if I find any other information

I'm sure samsung's own gallery app can read it, otherwise the software won't pass their in house QA. If you use Les Pas as a photo viewer in your file manager, it can also read the location info. It's quite weird. Maybe it's a another bug in android's ExifInterface API, like issue #101


The last power LED is still flashing after the power is turned on all night.

The last power LED is still flashing after the power is turned on all night. Does that mean the battery is still not fully charged?

You must have noticed that every once in a while all blue LED's go off for some time. If you would read the battery and Pi current value at such time, you may see that at that time the batteries are not charged, but discharged, and obviously feed the Pi.
I think the firmware collects data about the batteries during that period.
As the batteries get discharged somewhat during that period, they keep being charged at other times, so the 4th LED never stops blinking.
I have seen the fourth LED stopped blinking in some circumstance. I think it was when I shut down the Pi from the GUI with the charger left connected.
This is my understanding of this based on my own observations and some comment somewhere by GeeekPi.

thanks for youru replay,If this is normal, then I can rest assured

This is normal, but you can adjust the sampling period of the battery to control the charging method.

I re-tested in the shutdown state, still the same

Hi, I happened to check just yesterday shutting down the pi from the GUI.
Next I cut AC power to the ups. The red led on the pi was still on and the
blue lights were now all 4 lit, none blinking.
Then I pressed the ups button. This cut battery power to the pi, and the
red led went off.
After some short time - I didn't take the time - also the blue leds went
off by themselves, so the pi and the ups were then both dark.
Reconnecting the AC power started the pi up again.
Arjen
(On The Road)
Op ma 2 aug. 2021 09:24 schreef HouJianWei0610 @.***>:

I re-tested in the shutdown state, still the same
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/geeekpi/upsplus/issues/61#issuecomment-890789348, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ANCBKNTAKJTM36LEXXE2WFDT2ZB23ANCNFSM5BFKWG6Q
.

Thank you for your reply，I mean when the UPS is not supplying power to the Raspberry Pi (turn off the UPS) and keep the AC power on all night, the last LED still flashes，Does this mean that the battery is still not fully charged?According to my understanding, charging should stop and the LED will stop blinking, because there is no power output and only input

If I shut down the Pi using e.g. the OS GUI, the UPS does not cut the power even if I wait some minutes. I think it is determined by a register setting.
If I then press the UPS button, the UPS cuts the power to the Pi for a few seconds and then supplies power again and therefore the Pi starts up. AC is connected all the time.
If you disconnect AC after shutting down the Pi, the button has a different effect. It will cut the power to the Pi and not start it up by reconnecting the power (from the batteries). In this case, the blue leds stop blinking and will soon go off, so the UPS and the Pi are totally dark.
Reconnecting AC power will start up the Pi again.
In my case the registers that determine the behaviour of the UPS towards the Pi are as follows when the Pi is running:
Current values of the UPS power control registers (excerpt from my own reporting script output):
0x18=0 / 0x19=1 / 0x1A=0
Explanation:
0x18 - Power off timer (no restart)   - not set.
0x19 - Automatic restart upon return of external power: yes
0x1A - Power off timer (with restart) - not set.
Manipulating these registers will change what happens when the Pi is shut down by the UPS - actually it is of course shut down by the control script. I run frtz13's fanShutDownUps.py and haven't added any code to the script to manipulate the registers 0x18-0x1A at the time of shut down (because the script determines that the battery voltage is too low).
When shutting down the Pi the script executes the following:
def Shutdown(mqttclient):
if controlFan:
oFan.fanOFF()
MQTT_Terminate(mqttclient)
# initialize shutdown sequence.
try:
# enable switch on when back on AC
i2c_bus.write_byte_data(DEVICE_ADDR, 0x19, 1)
except Exception as exc:
syslog.syslog("[Shutdown] Error writing UPS register (back to AC power up): " + str(exc))
try:
i2c_bus.write_byte_data(DEVICE_ADDR, 0x18, SHUTDOWN_TIMEOUT)
except Exception as exc:
syslog.syslog("[Shutdown] Error writing UPS register (shutdown timeout): " + str(exc))
time.sleep(1)
os.system("sudo shutdown -h 1")
os.system("sudo sync && sudo halt")
while True:
    time.sleep(100)

It sets 0x19 to 1 and 0x18 to SHUTDOWN_TIMEOUT, which is defined as follows:
ups will shut down RPi the power supply with this delay after OS shut down command was given
SHUTDOWN_TIMEOUT_s = 60
Before I found frtz13's excellent script, I did all sorts of tests manipulating these registers 0x18-0x1A in my own control script, and got interesting results, which then changed when the f/w changed and later I forgot about my test results. I have not used my own scripts any longer, except for reporting all kinds of UPS values in the terminal. I am happy with frtz13's script, even though I cannot understand it fully, because of the OOP type of coding (I think that's what it is, instances and so on, almost esoteric, haha).
E.g. I made a control script so that it would shut down the Pi when a certain amount of time had passed after AC failure, say 10 minutes. I also had a control script for making the UPS reboot the Pi (probably through setting register 0x1A). At one time those worked with an old f/w. Not sure about now.

Sorry about the formatting. I forgot how to prevent this system thinking it knows better than me.

Thanks i got it，but a new problem appear,Sorry to trouble you，When I run Full-featured-demo-code.py, it prompts me no moudle smbus2, I tried to install it, but failed


[Feature request] refresh with data replacement

When using a SmartRefresher and calling pagingController.refresh() inside the onRefresh method,
this will lead to the pagingController throwing all items away and then loading new ones.
This also means, that during the loading, the initial loading screen of the Page is shown.
The SmartRefresher header is also shown. This means, there are now two loading indicators on the screen.
What I would wish as a feature is refreshing with data replacement.
This would mean:

calling refresh with an optional parameter boolean that defaults to false (e.g. refresh(background: true))
pagingController loading new data, but not emptying the items just yet
when the data is loaded successfully, the items are replaced.
if the loading fails, items arent touched

Hi @clragon .
I'm not sure what SmartRefresher is, but I'm guessing it's not from Flutter.
You can do what you want simply by not calling pagingController.refresh().
Inside your onRefresh, call a function you create that will load the first page again and does exactly what you want (e.g. not replacing item if it fails).
If you want to keep the indicator on the screen until items are loaded, you can use this solution.

Hi @EdsonBueno,
this seems to lead to a weird behaviour where the pagingController immediately requests the second page as well,
without the user actually scrolling there.
Code:
    try {
      List<Post> posts =
          await client.posts(tags, pagingController.firstPageKey);
      pagingController.value = PagingState(
        nextPageKey: pagingController.firstPageKey + 1,
        error: null,
        itemList: posts,
      );
      refreshController.refreshCompleted();
    } on DioError catch (error) {
      pagingController.error = error;
      refreshController.refreshFailed();
    }

pagingController.refresh() resets previously loaded content.
authors requested feature "pagingController loading new data, but not emptying the items just yet" is very useful.

@clragon Extends and override these methods to get what you want

class PagingControllerExtent<PageKeyType, ItemType>
    extends PagingController<PageKeyType, ItemType> {
  PagingControllerExtent({
    required super.firstPageKey,
    super.invisibleItemsThreshold,
  });

  /// Whether it is in the state of background refresh
  bool background = false;

  @override
  void refresh({bool background = false}) {
    if (background) {
      this.background = true;
      // Since the state of PagingState has too much influence,
      // skip it here and directly notifyPageRequestListeners.
      notifyPageRequestListeners(firstPageKey);
    } else {
      super.refresh();
    }
  }

  @override
  void appendPage(List<ItemType> newItems, PageKeyType? nextPageKey) {
    // Add judgment here
    final previousItems = background ? <ItemType>[] : value.itemList ?? <ItemType>[];
    final itemList = previousItems + newItems;
    value = PagingState<PageKeyType, ItemType>(
      itemList: itemList,
      error: null,
      nextPageKey: nextPageKey,
    );
    // reduction
    background = false;
  }
}

good, I think the default value of 'background' parameter of 'refresh' method better be  true!


Can't make it work in production

Hi, so i'm trying to get laravel echo server to work on production but i can't

{
	"authHost": "https://site.com",
	"authEndpoint": "/broadcasting/auth",
	"clients": [
		{
			"appId": "071e0d11945da9a5",
			"key": "73e255898eec05c7a5e762fcf99ecfb7"
		}
	],
	"database": "redis",
	"databaseConfig": {
	    "redis" : {
	      "port": "6379",
	      "host": "<IP_ADDRESS>"
	    },
		"sqlite": {
			"databasePath": "/database/laravel-echo-server.sqlite"
		}
	},
	"devMode": true,
	"host": null,
	"port": "6001",
	"protocol": "https",
	"socketio": {
	    "wsEngine": "uws"
	},
	"sslCertPath": "/etc/letsencrypt/live/site.com/fullchain.pem",
  	"sslKeyPath": "/etc/letsencrypt/live/site.com/privkey.pem"
}

It starts on dev and listens to everything but can't understand why in production it doesn't work, any help?

Changed port to 8443 because of cloudflare and now i'm getting this
#162

There are too many errors. Could you break down a little your problems?

Can your socket.io.js file  be downloaded/opened in yoru browser?
Can you try without ssl?

Side question: how do you implement ssl on your sockets?

I have the same problem. @janva255 can you write down how you fixed this problem?

Has anyone find a solution?

Didn't work in cloudflare for me.


Fail parsing the request line version if there are too many characters

Running autest for testing text parser sounds like a great idea 😛

@maskit that is a very good point.  I have adjusted the PR to only change the default value of proxy.config.http.strict_uri_parsing from 0 to 1.  Probably having a default of 0 (disabled) made sense 15 years ago when many more clients played very loose with the spec, but these days good clients should be within spec and we should be in the more secure stance out of the box.

Hmm, looks like a fair number of our clients like to use non-RFC compliant characters in their requests.  It seems like having a middle ground check for white space and control characters would be useful.  I'm experimenting with that.

Will be opening a different PR which adds an intermediate option to the strict url parsing setting.


Use unit tests for all code

See lasair-lsst/#73

30JUN/21

@RoyWilliams and @tms-epcc agreed this is being dealt with in Cycle-4 under Review and set up software engineering process for build phase

As agreed at Lasair SE process meeting on 22/SEP/21
@RoyWilliams  / @gpfrancis  To work together on the annotation ingest code such that unit tests are created and their execution automated via Jenkins. Report on this at the next meeting.
@genghisken  / @thespacedoctor  To work together on the Cassandra data inserts (replace code with pre-cooked code) such that unit tests are created and their execution automated via Jenkins. Report on this at the next meeting.

For tests see https://github.com/lsst-uk/lasair4/tree/main/tests


Blog on Monolithic vs Microservices

Hi @swoyam2609 shall I create a blog based on Monolithic vs Microservices, please give me chance

Hi @swoyam2609 , I have made PR regarding this blog, please check and BTW thanks for the chance :)

Issue resolved in PR #60
Please merge it.
Thank You!


Update authorfile11.md

@adunndevster : Thanks for your contribution! The author, @lamebrain, has been notified to review your proposed change.

@adunndevster : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#assign bharney-msft


Add missing user stories

Codecov Report

Merging #85 (1f28c64) into master (10c207a) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #85   +/-   ##
=========================================
  Coverage     64.32%   64.32%
  Complexity      472      472
=========================================
  Files            88       88
  Lines          1640     1640
  Branches        182      182
=========================================
  Hits           1055     1055
  Misses          523      523
  Partials         62       62

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 10c207a...1f28c64. Read the comment docs.


can not import scikit-image in ArcGIS Pro 1.4

I'm using ArcGIS Pro 1.4 and want to create my own raster functions with scikit-image. ArcGIS Pro 1.4 is using python 3.5. I downloaded every library from this page in version 3.5 and have it installed, but it is not working.
http://www.lfd.uci.edu/~gohlke/pythonlibs/#cython
Has somebody any idea what my fault is or maybe it's not working with python 3.5?

Let me look into that @ricrockstar . We did change the Python implementation/install path slightly at 1.4.  Take a look under "Project tab > Python" and make sure Scikit image is in that list.

I have looked in ArcGIS Pro 1.4 under project, but it is not present. If I look on my PC under the ArcGIS Pro path, where I installed the scikit-image package, it shows up. Is there an solution to get it into ArcGIS Pro 1.4?

@ricrockstar Try selecting add packages then search for scikit image. Try installing it from here. It should install and path to everything for you.

Thanks a lot, now it works


fix(@angular/cli): don't try to setup completion in CI environments

Auto completion isn't useful in CI environments and in some cases commands are run in parallel which causes race conditions.
Example: https://angular-team.slack.com/archives/C46U16D4Z/p1654089933910829

Marked as blocked until merge freeze is lifted.

I thought I already accounted for turning this off in CI? I think isTTY() checks for the CI environment variable:
https://github.com/angular/angular-cli/blob/8da926966e9f414ceecf60b89acd475ce1b55fc5/packages/angular/cli/src/utilities/tty.ts#L21
There's even an existing test for this:
https://github.com/angular/angular-cli/blob/94228620e5f7d1f134431c745b9c247064a737b7/tests/legacy-cli/e2e/tests/misc/completion-prompt.ts#L283-L294

@dgp1130 good catch, so there must be something else going on.


move project to symmetryinvestments and archive this one

symmetryinvestments already had a fork of excel-d for some reason. I had to delete that one then transfer it over.


x/net,net/http/httputil: ReverseProxy attempts to log each http2 stream cancellation, causing concurrent streams to grow unbounded due to logger buildup

Summary: ReverseProxy backed up on mutex in go logger while cleaning up cancelled HTTP2 streams.

What version of Go are you using (go version)?

$ go version

go version go1.17.7 darwin/amd64

Does this issue reproduce with the latest release?
Yes - We weren't able to try this, but the httputil code in question has not changed.
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/amandachow/Library/Caches/go-build"
GOENV="/Users/amandachow/Library/Application Support/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/amandachow/go/pkg/mod"
GOOS="darwin"
GOPATH="/Users/amandachow/go"
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="go1.17.7"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/dev/null"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/_f/1tl8g2w95wx34b7zp53y0kqc0000gp/T/go-build69516959=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?
I have a service that uses the httputil ReverseProxy as a load balancer, proxying requests to upstream services. My service averages ~10k requests per second, nearly all of which are streams. The streams are short lived - The P95 stream duration (the duration of time that a finished stream was alive) is 400ms.
I upgraded the x/net version from v0.0.0-20210929193557-e81a3d93ecf6 to v0.0.0-20220531201128-c960675eff93. I confirmed that the change directly after the old version, http2: refactor request write flow, is the first version that introduces the following symptoms.
What did you expect to see?
No noticeable behavior change to my service.
What did you see instead?
My service's number of currently open streams began growing unbounded. When healthy, my service has ~60 concurrent streams - With the upgrade, within 3 minutes it had reached 300k open streams and was continuing to grow.
I took a goroutine dump and it showed nearly all goroutines were waiting on the go logger's mutex to log the stream cancellation. Example log: (Message is always identical, except for the stream ID)
2022/06/03 01:37:59 httputil: ReverseProxy read error during body copy: stream error: stream ID 1403; CANCEL

From the pprof:

I do not set a custom ReverseProxy ErrorLogger. My theory is that due to the cleanupWriteRequest introduced in the transport.go change, a CANCELed stream will now cause http2's Transport to return an error in RoundTrip, which is then consumed by ReverseProxy. ReverseProxy attempts to log each instance of this. Since the service has a high workload (rate of stream requests proxied), the logger falls behind and causes the buildup of concurrent streams.
It looks like ReverseProxy attempts to filter out other request cancellation errors - io.EOF and context.Canceled - and not log in those cases. It seems like it should also filter out http2 stream cancellation?
To test this theory, I set the ReverseProxy ErrorLogger to a custom go Logger with a no-op io.Writer:
type noOpWriter struct {}

func (noOpWriter) Write(_ []byte) (n int, err error) {return 0, nil}
[...]
&httputil.ReverseProxy{
		ErrorLog: log.New(noOpWriter{}, "", 0),
		[...]
}

With this change, using x/net v0.0.0-20220531201128-c960675eff93, the service performed as expected - The concurrent streams no longer grew unbounded.

cc @neild @bradfitz


feature request: load data from URL

I think this would be useful.
There might be at least two approaches to this:

DuckDB has functionality to point to URLs
fetch the url and process the file similar (I guess) to existing process

edit: I just read #81 ; using this feature this might make it possible to share complete links to huey output (if data url and report state both included in url hash)

This is now supported.

Looks nice but just gave this a go and it doesn't seem to work for me:

I'm trying this url: https://huggingface.co/datasets/severo/test-parquet/resolve/main/parquet/csv-train-00000-of-00001.parquet?download=true
One error in the console but it occurs when I load the app, probably related however?

Using Firefox but exact same issue on Chrome.

@declann , thanks for trying! Looking into it.

Interesting! I wonder where does the huey requirement comes from?
This sample URLs work in duckdb shell, but not in huey:

Hi Declann!

I wonder where does the huey requirement comes from?

Yeah it's a good question. It's not really the mime type I care about, it's just that I try to specify the exact reader. And in order to do that I need to know what type of file it is. For local files I would simply check the file extension, which is of course very crude but also not terribly unreasonable and at least easy to explain.
With url's it becomes a bit trickier and I thought I could spare myself the trouble of parsing the url to discover the extension (if present) by just asking the server what the mime type is.
I know that in duckdb we can just say,SELECT FROM "file", and then duckdb will do it's best to find out what reader to use. But there is no way that I know of afterwards to figure out what reader duckdb ends up using.
The reason for wanting to explicitly specify the reader is that different readers have different parameters and settings, I want the user to be able to control that and where possible benefit from the specific reader's capabilities.
But you make a good point, huey's file detection capabilities (or lack thereof) should not hamper user experience.
I think I can probably work around it, I just need a little bit of time. To be continued, soon.

Makes sense now, thanks a lot for that explanation Roland!

Hi @declann, can you give it another go? I think it should be a bit more robust now.
TIA!

Happy to try it! But sadly nothing noticeable loads for me after I enter the URL. I notice one query posted to console though:

I just checked the online demo and I'm seeing the same for that! That's really odd. Looking into it - sorry for the inconvenience.

No worries at all!!

ok sorry bout that. Try again pls?

Works and is awesome! Thanks!


(build) fix JDK 16/17 builds

Replaced a few EasyMock tests with Mockito where needed.
--illegal-access=permit for guice tests.
Remove JDK17-ea for now, no groovy support.

Following this checklist to help us incorporate your contribution quickly and easily:

[ ] Make sure there is a JIRA issue filed
for the change (usually before you start working on it).  Trivial changes like typos do not
require a JIRA issue.  Your pull request should address just this issue, without pulling in other changes.
[X] Each commit in the pull request should have a meaningful subject line and body.
[ ] Format the pull request title like [SHIRO-XXX] - Fixes bug in SessionManager,
where you replace SHIRO-XXX with the appropriate JIRA issue. Best practice
is to use the JIRA issue title in the pull request title and in the first line of the commit message.
[X] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[X] Run mvn clean install apache-rat:check to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
[ ] If you have a group of commits related to the same change, please squash your commits into one and force push your branch using git rebase -i.

Trivial changes like typos do not require a JIRA issue (javadoc, comments...).
In this case, just format the pull request title like (DOC) - Add javadoc in SessionManager.
If this is your first contribution, you have to read the Contribution Guidelines
If your pull request is about ~20 lines of code you don't need to sign an Individual Contributor License Agreement
if you are unsure please ask on the developers list.
To make clear that you license your contribution under the Apache License Version 2.0, January 2004
you have to acknowledge this by using the following check-box.

[X] I hereby declare this contribution to be licenced under the Apache License Version 2.0, January 2004
[X] In any other case, please file an Apache Individual Contributor License Agreement.

The PR will only fail for JDK 11, but will work on JDK 8 and 14:

https://ci-builds.apache.org/job/Shiro/job/Shiro-jdk8/view/change-requests/job/PR-278/
https://ci-builds.apache.org/job/Shiro/job/Shiro-jdk11/view/change-requests/job/PR-278/ (that is this toggling test… works just sometimes.)
https://ci-builds.apache.org/job/Shiro/job/Shiro-jdk14/view/change-requests/job/PR-278/

The PR will only fail for JDK 11, but will work on JDK 8 and 14:

https://ci-builds.apache.org/job/Shiro/job/Shiro-jdk8/view/change-requests/job/PR-278/
https://ci-builds.apache.org/job/Shiro/job/Shiro-jdk11/view/change-requests/job/PR-278/ (that is this toggling test… works just sometimes.)
https://ci-builds.apache.org/job/Shiro/job/Shiro-jdk14/view/change-requests/job/PR-278/


Configure Kafka consumption from a specific timestamp

Currently, we only seem to support smallest/largest values for consumer.prop.auto.offset.reset in case of  OSS Kafka consumer plugin. It would be great to also support consuming from a specific timestamp. With the KafkaConsumer#offsetsForTime() and KafkaConsumer#seek() api's we should be able to do so (or perhaps there's a simpler way?).

Native pinot code supports any string there, not just smallest/largest. The underlying plugin can interpret the string however it wants.
We only want that the underlying plugin interpret the basic strings we need them to (smallest/largest).
in LinkedIn, we use "2d", for example. The stream then attempts to provide an approximate offset that is about 2d old.

Yes, that's what was the intent of the issue, updated for clarity.

This would be a useful feature. Tagging this as a beginner issue.


Remove repeated imports from amp-lightbox-gallery

Those are making the page not valid

Thanks for fixing!


handled the checkout in feature 6

Heyy, this is pretty good code if I do say so myself.

Gracias.


Use  and  for emphasis

RASH uses the wrong elements for emphasis:

HTML5 defines the <i> element to “[represent] a span of text in an alternate voice or mood, or otherwise offset from the normal prose in a manner indicating a different quality of text, such as a taxonomic designation, a technical term, an idiomatic phrase from another language, transliteration, a thought, or a ship name in Western texts.”
HTML5 defines the <b> element to “[represent] a span of text to which attention is being drawn for utilitarian purposes without conveying any extra importance and with no implication of an alternate voice or mood, such as key words in a document abstract, product names in a review, actionable words in interactive text-driven software, or an article lede.”

This pull request introduces the correct elements with the semantics intended by RASH, which is <em> for emphasis and <strong> for strong emphasis.
With this pull request RASH becomes compatible with HTML5 with regard to emphasis.

+1

Awesome, thanks :smile:

This change is a mistake based on a common misunderstanding about HTML and it’s disappointing to see it getting enshrined in RASH.

@sideshowbarker What “common misunderstanding” do you mean? Please clarify why <i> and <b> would be more appropriate for emphasis and strong emphasis than <em> and <strong> (and don't forget to back that up with references to the HTML specification).

@RubenVerborgh I’ll pass.

@sideshowbarker Given your lack of arguments, I guess we can safely say the HTML specification proves this change correct. Here's the specification of <i>, <b>, <em>, and <strong> to take away your latest doubts.


feat: use island colors

:pencil: Description

Refactors away some duplicate code and switches color palette to island colors!

:tada: This PR is included in version 1.3.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Form Disappearing Act I

Go into the RNA-Seq form, and select a file to fill in the top pair-end reads through the folder button/icon.  I chose /Public Workspace/PATRIC Workshop/RNA-Seq/COL_75_R1.fq.gz.  Click the folder button/icon again, but immediately cancel.  The form item will disappear.  Click the folder icon again.  Reselect the file you chose and hit OK (do not select any other file during the process).  The file will not appear.  I also got it to work in the Assembly and Annotation forms as well.  Others may be affected.

#2247


Add support for cross compiling to ESP MCUs

Motivation for this change
Provide a toolchain for Espressif's Xtensa-based MCUs. This uses Espressif's
GCC/binutils/newlib forks, as well as applies a variant specific overlay.
The toolchain can be used both with the ESP-IDF sdk or "bare-metal" (eg. using https://github.com/taktoa/esp32-baremetal).
This is a rebased / slightly improved version of #96131.
While the PR should support the esp32, esp32s2 and esp8266, I only have the first one to try. I should be able to get my hands on an esp8266 this week to have a try at it. It could also support the newly announced esp32s3, but since there are no publicly available boards yet I've omitted it for lib/systems for now.
There are still a couple of issues / potential changes to be made.

I used a isXtensa predicate in a bunch of places. This isn't very accurate, since there could be some non-esp xtensa chips. A isEspressif predicate wouldn't work either since espressif has some RISC-V cores too. isXtensa && isEspressif is a bit verbose. I'm inclined to keep using isXtensa until another xtensa chip comes along and/or support for a RISC-V ESP core is added (for instance, I think the newlib package would be shared).
The way the overlay package is downloaded and distributed is probably bad. I don't know what the best practice is for this.
I've copied the gcc flags and newlib configuration flags from Espressif's crosstool-ng config.

-mlongcall is required otherwise I get linker errors on anything non-trivial.
--enable-newlib-long-time_t (ie. 32bit time_t) is required by the default ESP-IDF configuration, but there's a flag in the IDF to use if the toolchain uses 64bit time_t.
The rest, I think, are strictly a matter of preference and space/time tradeoff.

(Off-topic) or1k and vc4 have their own newlib package definitions that could be merged with the default development/misc/newlib one. I'd originally done this, but decided to leave it for another time to keep this PR on-topic.

Things done

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

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

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

@plietar do you mind rebasing this? Based on the feedback in the original PR this should still be very welcome. We can try to ping those with domain knowledge again to see what they say: @Ericson2314 @Mic92

@plietar please resolve the merge conflicts. I was actually looking into adding xtensa cross-compilation support today, and glad you already got it started!

Hi! What's the status of this pull request? I can rebase this PR and create a new one, if you don't have the time.

Rebased and addressed comments in #144452

Superseded by #144452


Disabling node_exporter but node_exporter_build_info continues to send

Please forgive me if I'm missing something obvious.  I'm fairly new to Helm charts and I'm trying to understand some interdependencies between charts here.
I'm using a Grafana Cloud instance and starting with the configuration created by the Kubernetes datasource integration there. I quickly overran the Metrics collection per user ( err-mimir-max-series-per-user ) and I am turning the knobs to understand each collection source.
Expectation:
With the following as part of the configuration file, I expect that all of the node-exporter features would be disabled and no node-exporter metrics would be sent:
metrics:
  enabled: true

  node-exporter:
    enabled: false

prometheus-node-exporter:
  enabled: false

Actual:
When I redeploy this chart, I see that many node-exporter metrics stop sending.  For example container_cpu_usage_seconds_total metrics stop reporting as shown in Home -> Explore -> Metrics -> container_cpu_usage_seconds_total
However in the Kubernetes Dashboard's Configuration -> Metrics tab, the 'Node Exporter' metric continues to display a green checkbox, and checking again in the Explorer-> Metrics I can see that 'node_exporter_build_info' continues to report.
I'm trying to understand why node_exporter_build_info appears to be continue reporting, whether I have actually disabled node_exporter metrics or have failed to select a correct metric to check, and whether there is some other area I should be disabling.
I thank you for you consideration and for helping a newbie on this.

I think I found that an additional node_exporter_build_info is being sent by the chart's internal telemetry reporting. I'll fix that.

Thanks very much!  I found it to be a bit confusing.


Generic for named type

type S[T any] struct {
	J T
}
func (d Data[T]) run() {

}

Needs to be supported however the same restrictions that caused all generic functions to become macro functions also applies to a type generic. The main issues being T being a type union of number types with operator overloads makes it not possible to have the underlying type haxe.Int64 or Int or haxe.UInt64. Working on a way to support this if no more sophisticated way can be found I'll just have go2hx generate all of the possible generic types from the type union, though I really don't want to do that.

Presumably T any could also include any user-defined or Go-standard-package-defined types too, in addition to the Go built-in types.
That is a very long list indeed, that could only be known after all of the packages comprising a program had been compiled together and a combined list generated.
This would mean that all of the Go packages required in a go2hx library for Haxe would need to be transpiled in the same run.
It is a shame that the native Haxe generic constructs can't be used.

For once, i think i have a viable idea:
You can have a file named TCombos.hx at src/_internal (to hide it from intellisense), which is going to contains all of the needed abstract definitions:
Lets say you need a generic of type Float, Int and Int64, or any 3 types, you add this to TCombos.hx
abstract OneOfThree<T1, T2, T3>(Dynamic) from T2 from T2 from T3 to T1 to T2 to T3 {}

Then, wherever you need an input of one of those 3 types, you can do:
import _internal.TCombos;

function iNeed3Types(type:OneOfThree<Int, Int64, Float>)

class SomeClass<T:OneOfThree<Int, Int64, Float>> {}

NOTICE - the underlying type is dynamic so you probably want to convert it to something else

Also I just noticed I'm pretty sure the T generic with the OneOfThree constraint type is redundant, since whatever T is can always be replaced with OneOfThree<Int, Int64, Float>
class SomeClass<T:OneOfThree<Int, Int64, Float>> {}

import stdgo.StdGoTypes;

function main():Void {
	stdgo.fmt.Fmt.println(_m(((10 : GoInt))));
	stdgo.fmt.Fmt.println(_m(((10.2 : GoFloat64))));
}

function _m<T:AnyOf2<GoInt, GoFloat64>>(_x:T):T {
	return _x + _x;
}

@:transitive @:anyof extern abstract AnyOf2<T0, T1>(Dynamic) from T0 from T1 to T0 to T1 {
	@:op(A + B)
	static function add(a:AnyOf2<stdgo.StdGoTypes.GoInt, stdgo.StdGoTypes.GoFloat64>,
		b:AnyOf2<stdgo.StdGoTypes.GoInt, stdgo.StdGoTypes.GoFloat64>):AnyOf2<stdgo.StdGoTypes.GoInt, stdgo.StdGoTypes.GoFloat64>;
}

Cannot add _m.T and _m.T
However this version does work without T , T is needed though for Macro Type inspection of the generic at compile time.
package github_com.go2hx.go4hx.rnd;

import stdgo.StdGoTypes;

function main():Void {
	stdgo.fmt.Fmt.println(_m(((10 : GoInt))));
	stdgo.fmt.Fmt.println(_m(((10.2 : GoFloat64))));
}

function _m(_x:AnyOf2<GoInt, GoFloat64>):AnyOf2<GoInt, GoFloat64> {
	return _x + _x;
}

@:transitive @:anyof extern abstract AnyOf2<T0, T1>(Dynamic) from T0 from T1 to T0 to T1 {
	@:op(A + B)
	static function add(a:AnyOf2<stdgo.StdGoTypes.GoInt, stdgo.StdGoTypes.GoFloat64>,
		b:AnyOf2<stdgo.StdGoTypes.GoInt, stdgo.StdGoTypes.GoFloat64>):AnyOf2<stdgo.StdGoTypes.GoInt, stdgo.StdGoTypes.GoFloat64>;
}

@haxiomic do you have any ideas about why the T type in the first example doesn't use the add op function?

Also another issue is Generic types of a Union needing a default type somehow even though it could potentially be any of the types of the Union.

That the Haxe compiler's generation of instantiated code from generic functions does not know how to add two values together using the instantiated type is a severe limitation.

That the Haxe compiler's generation of instantiated code from generic functions does not know how to add two values together using the instantiated type is a severe limitation.

Yes indeed @elliott5 it's quite frustrating, generics may be the least supported aspect compared to Golang that go2hx should have 1st class support for.
Perhaps yor initial idea of just generating all potential generic types might be right after all, the limitations are very hard to get around with still using generics though I will try to explore the option a little longer.

The options for implementing Go generics in go2hx would seem to be:

Use Haxe generics ... but as the discussion above demonstrates, this is difficult to achieve because of the mis-match between the two language models;
Use brute force expansion to generate specific code for every possible Go type that could use the generic ... but this requires a two-pass approach (the first to gather all the types) and so does not permit individual module/package  compilation, plus it will generate a huge amount of code which will slow compilation; or
Use an interpretive approach to implementing Go generics, passing and returning all values as Go interface{}s ( for a working example of this methodology see the "add" function of Yaegi - https://github.com/traefik/yaegi/blob/2248851d7700bee036109be660b5fbaef1d7b095/interp/op.go#L13 ) ... this is slower at runtime, but simpler to implement.

Of course, the best result would be if the project could use Haxe generics.

Go Generic function = Macro function
Go Generic type = Haxe Generic type
Go Generic recv function = Static extension + Macro function

To fix Haxe generic type having null generic type fields, I have it so that when the struct type gets created if it has type params / is a generic type, it will set all struct fields to the default values in the new construction / :structInit ObjectDeclaration
Struct types will no longer be special with the ability to not have a wrapper or static extension class and now all Named types will have these 2 corresponding classes with them.
Wrapper is redundant to manually type however the macro generation approach before caused many issues, so for the time being this should work out well.

I'm delighted you have found a way forward with this @PXshadow - well done!

So much macro writing.....
This is the current issue:
Field index for _add not found on prototype github_com.go2hx.go4hx.rnd.L_static_extension
It involves referencing a static extension macro but it doesn't exist at compile time and possibly runtime.

Wow @PXshadow, your solution has come a long way!
Does this issue occur when a generic method contains A + B but their type is unknown? If so, one approach would be to automatically create methods for all Go types for all Go infix operators (like "+"). Then rely on Haxe DCE to remove them after compilation.
Otherwise, you will need to explain further ;)

Actions speak louder then words, very pleased with a first draft now committed @elliott5  I wrote up what's still missing in the commit and I hope it's clear enough to see the current state of this.
As for the issue it occurs because of the strange limbo state of static extension (or Go receiver function) macro functions.
The function exists at compile time to utilize adding methods to any type with the :using system but does not exist at runtime...  because macro functions become the returned expression, which is fine if you directly call the function however if the function instead gets stored it becomes a lot more tricky.
The very very good news though is that this potential issue can be overcome by calling a macro function on the static extension macro to create a real function for it.
An example when this situation would occur would be for passing around the function in this example:
package main

func main() {
	l := L[string]{"hello"}
	x := l.add // not called directly but rather stored
	println(x(l)) // now called here
}

type L[T int | string] struct {
	x T
}

func (x L[T]) add(a L[T]) T {
	return x.x + a.x
}

I can give the equivalent generated code in Haxe with notes, it is rather long, if you're interested let me know.
Thanks for your patience @elliott5 hopefully this will be the last multi week retreat for implementing major language features very incompatible with Haxe.

Well done for committing a first draft @PXshadow.
If I have understood correctly, because go2hx is using Haxe macros to implement the methods (receiver functions) of a Go generic type, that code must be generated at compile time.
Thus when a Go generic type is instantiated, all of its methods must also be created. We'll need all of them because if the instance is passed as a Go interface any of those methods could be called.
My suggestion is to auto-generate both the additional fields within the generic type to hold the methods, and the code to populate those additional fields.
To slightly re-write your example:
package main

func main() {
	l := L[string]{
		"hello",
		func(x, a L[string]) string { return x.addMacro(a) }, // auto generated line
	}
	println(l.add(l, l)) // auto changed call signature
}

type L[T int | string] struct {
	x   T
	add func(x L[T], a L[T]) T // auto generated line
}

func (x L[T]) addMacro(a L[T]) T { // auto generated re-name
	return x.x + a.x
}

I'm hoping there are more elegant ways of implementing the slightly convoluted Go above once transpiled into Haxe!
Since many generic variables of the same implementation type will be created, possibly repeatedly, there will be more efficient ways of implementing the above by holding the instantiated type methods in a per-generic registry, and generating them only once per program execution... but that is for the future.

@elliott5 Yes you are correct. Basically macro functions must be called straight away so in order to have the Haxe compiler not complain.
There is a Haxe compiler issue holding back the 2nd draft from fully working, hopefully it will be addressed soon https://github.com/HaxeFoundation/haxe/issues/10716

As it may take some time for the Haxe compiler team to resolve this issue @PXshadow, is there some naming convention you could adopt that would make the issue less likely to occur?

@elliott5 yes even better I could check for name conflicts and then simply make those functions non modular and instead in a class, shouldn't anything functionality wise, only slightly less good looking syntax output.

I see @Simn has already fixed https://github.com/HaxeFoundation/haxe/issues/10716 ... thank you Simon, the Haxe foundation is very lucky to employ you!

I assume this is fixed now, feel free to write if not and I will reopen.


New sample: MVP-Clean-RxJava-Dagger2

Is this an open issue for anyone to jump on?
I'd love to implement it.

@Kaerdan That would be really great - and YES - this is a sample/issue for the community. So "jump in" :) :+1:

See this new section:
https://github.com/googlesamples/android-architecture/wiki/Unofficial-samples

@Kaerdan If you're using a fork, then it's only possible to create an issue in the original repo.
@JoseAlcerreca If I want to create an issue only for the repo/fork of Kaerdan, how should I do this? Do you have any suggestions?

Please bear in mind that Rx and dagger2 are being developed. An official Clean+Rx+Dagger2 sample would have to be a combination of the three branches. If you fork Clean and start adding Rx to it, the implementation will be different from what @ErikHellman is working on, probably :), so they would have to be merged afterwards.
But of course if you want to work on it on your own, in your own repo that's fantastic. Development branches can use your implementation as reference too.
Let's not open any more issues @Rainer-Lang, and keep the conversation about it here :+1:

@JoseAlcerreca Yeah, I have that in mind, I added Rx in Domain part and it looks really nice. Now, I'm waiting for Rx and Dagger2 branches. At lease the first one, the I can finish mvp-clean-rxjava.
It looks like no one is developing Dagger2 branch, probably I should try to implement it, but it is a discussion for another issue.

Cool! Can you share your progress?
We just started development on the Dagger2 branch! I'll assign the issue ASAP.

Sure, check this branch: https://github.com/Kaerdan/android-architecture/tree/dev-todo-mvp-clean-rxjava
UseCase is now responsible for subscribing and observing on different threads. So Presenter just run a UseCase and subscribe, I think it is a little bit cleaner then asking a Handler to run UseCase for you, as it is done in todo-mvp-clean. Also concrete UseCase provides Scheduler that in want to use, so the whole concurrency model became more flexible.

@Kaerdan Maybe you could help: At the end of an activity (fragment) (eg user pressed backpress) I have to save data in database and even I have to send data to a server (long running task).
How could this be done with MVP-Clean-RxJava-Dagger2? Could you give some hints or make an example for this?

@Rainer-Lang I don't really see a problem. You can just create a specific UseCase and use it. I can't recommend anything concrete, because I don't know your intents. One of the pitfalls of your scenario is that no one will be able to process Exception if something will go wrong.
Probably it will be better if somebody who launches this activity (fragment), could also send this data to your server. But again I don't know your real intents, so I can only guess.
@JoseAlcerreca Sorry for unrelated discussion.

@NikitaKozlov

When to use this: https://github.com/NikitaKozlov/android-architecture/blob/dev-todo-mvp-clean-rxjava/todoapp/app/src/main/java/com/example/android/architecture/blueprints/todoapp/taskdetail/TaskDetailPresenter.java#L73
Thanks.

Any plans for MVP-Clean-RxJava-Dagger2?

@NikitaKozlov In the example it's used Observable.create(), but there are different known issues. Have a look here:
https://artemzin.com/blog/rxjava-defer-execution-of-function-via-fromcallable/
and http://blog.danlew.net/2015/07/23/deferring-observable-code-until-subscription-in-rxjava/

Any new progress on the sample MVP-Clean-RxJava-Dagger2? Is the sample finished?

+1

I implemented a MVP-Clean-RxJava-Dagger2 sample too, based on the MVP-Clean sample.
Replaced the callbacks with Rxjava & replaced the Injection part by Dagger2.
For the UseCases, I considered to keep the possibility to do complicate schedule controls.
I wish i could do it based on @NikitaKozlov 's work,
but because I just happened to use MVP-Clean-RxJava-Dagger2 in a new product as I mentioned when we met in DevFest Tokyo 2016  @JoseAlcerreca. I want to share my idea here.

Closing as obsolete.


How do I initiate a chat?

I see the method for sending a new message but am not extremely experienced with Python yet and am struggling to get a minimal example of just starting a new chat with a particular user working.

this is how to start a dm once the bot is started, doesnt work for you?
https://github.com/j-hc/Reddit_ChatBot_Python/blob/4eb1cca39a063f628da5c2c786a66084309ff45c/examples/casual_chatbot.py#L107-L112

Yeah it didn’t work. I just automated the browser fully with selenium to do
it API-less instead 😂
On Thu, Dec 15, 2022 at 7:10 AM j-hc @.***> wrote:

this is how to start a dm once the bot is started, doesnt work for you?
https://github.com/j-hc/Reddit_ChatBot_Python/blob/4eb1cca39a063f628da5c2c786a66084309ff45c/examples/casual_chatbot.py#L107-L112
—
Reply to this email directly, view it on GitHub
https://github.com/j-hc/Reddit_ChatBot_Python/issues/20#issuecomment-1352970070,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKCZLXVBRDHRMROTZP32GETWNMDDRANCNFSM6AAAAAAS7GRZEM
.
You are receiving this because you authored the thread.Message ID:
@.***>

it works. the problem is on your end and i cant help you without any logs or something.

Well that was the thing, there were no error logs or anything, just nothing
happened with that particular event. Quiet failure. And I did get some
messaging to work (only sending to one user, my own alt account), and after
creating a chat manually, but then the account was shadow banned. Could no
longer access the chat feature on that account. Looked it up and it is a
thing that other people have reported as happening.
On Wed, Dec 21, 2022 at 6:25 PM j-hc @.***> wrote:

it works. the problem is on your end and i cant help you without any logs
or something.
—
Reply to this email directly, view it on GitHub
https://github.com/j-hc/Reddit_ChatBot_Python/issues/20#issuecomment-1362215458,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKCZLXRIQ5W7LAYGBARQHXTWOOGWXANCNFSM6AAAAAAS7GRZEM
.
You are receiving this because you authored the thread.Message ID:
@.***>


fix(tests): fix TestKongAddonWithCustomImage which was waiting for LoadBalancer IP without metallb installed

Related https://github.com/Kong/kubernetes-testing-framework/issues/540

Codecov Report
Base: 51.99% // Head: 23.79% // Decreases project coverage by -28.21% :warning:

Coverage data is based on head (811d4ec) compared to base (f9eadcf).
Patch has no changes to coverable lines.

Additional details and impacted files
@@             Coverage Diff             @@
##             main     #541       +/-   ##
===========================================
- Coverage   51.99%   23.79%   -28.21%
===========================================
  Files          50       50
  Lines        3904     3904
===========================================
- Hits         2030      929     -1101
- Misses       1612     2851     +1239
+ Partials      262      124      -138

Flag
Coverage Δ

integration-test
23.75% <ø> (-32.97%)
:arrow_down:

unit-test
3.27% <ø> (ø)

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

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

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


Background noise

Added background noise, similar to https://sherlock.xyz

Apparently, adding this new div broke the absolute positioning of the shadow.

Apparently, adding this new div broke the absolute positioning of the shadow.

Good catch! The new div was not causing this but the fact that I imported the SVG as a React component, that rendered the SVG inline, not as an img tag, which messed up the styling. I have replaced the inline SVG with a img tag to be just like before. 👍

Ahh nice. Tricky!


[BUG] Angular 6: Link Text is not updating when unchecking  "Open in new tab"

I'm submitting a

[ ] Regression (a behavior that used to work and stopped working in a new release)
[x] Bug report
[ ] Enhancement
[ ] Feature request
[ ] Documentation issue or request

Description
When trying to Create Link with unchecked "Open in new tab" I'm seeing only URL without text.

Version Information
ngx-editor: 3.3.0
angular: 6.0.1

Browser

[x] Chrome - 67.0.3396.99
[ ]  Mozilla Firefox - x.x.x
[ ] Opera - x.x.x
[ ] Microsoft Edge - x.x.x

Hi, This editor is made for angular5, also its dependencies depend on angular 5. Angular6 is a work-in-progress. please wait for some time.


Missing doxygen test

This is intended as a test of workflow, not really as a serious PR.

Oops, meant to do this on my repo, not on yours. Closing.


Why the model not converging?

Hi, thanks for the useful repo. I tried the code on a single spiral image. After 10k training steps, the model still doesn't converge. How could this happen? And I don't understand why the artifacts occur around the border?
I am showing the results (left) and the training image (right) below.

I'm using the default setting for the loss and the lr.

Update: after training 169k steps...

@KelestZ Hi Peiye, do you want to try the latest version (I brought back the old resnet blocks) and see if it makes any difference?

Still odd. Do you mind trying it on your end? Just in case I set hyper-params wrong. I attached the training image here. I trained it at 128*128 resolution.

Hi, if my model produces images with noises after being trained for 10k iterations, how can I resolve the problem ?

@KelestZ Hi, have you resolved the convergence issue of the model ? I am encountering the similar problem where my model produces images with noises after being trained for 10k iterations and I have no idea how to debug .

@KelestZ Hi, have you resolved the convergence issue of the model ? I am encountering the similar problem where my model produces images with noises after being trained for 10k iterations and I have no idea how to debug .

Maybe you can try the repo by openai (https://github.com/openai/guided-diffusion) or by rosinality (https://github.com/rosinality/denoising-diffusion-pytorch). My issue was getting solved when switching to these two. (I feel sorry to say that but that's the solution I had)


Globally-uninstalled packages still listed when running npm list -g

~
❯ npm uninstall -g babel-core

~
❯ npm list -g --depth=0
/Users/kevinSuttle/.nvm/versions/node/v6.2.2/lib
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>
❯ nvm current
v6.2.2

❯ nvm --version
0.31.1

❯ which babel-core
babel-core not found

Not sure if this is a caching thing or what. Even logging out of the current shell session and back in, I still get the same output.

It might be a permissions issue. Check in npm root -g as well (ie, in "lib", not "bin")? If you sudo npm install -g'd it, then you wouldn't be able to remove it properly without sudo, for example.

(It also might be related to having a non-lowercase username, but I hope it's permissions)

❯ npm root -g
/Users/kevinSuttle/.nvm/versions/node/v6.2.2/lib/node_modules

I also tried uninstalling with sudo. No effect.

Hm. Seems it's fine now after running
❯ npm cache clean babel-core
❯ npm cache clean
❯ npm list -g --depth=0
/Users/kevinSuttle/.nvm/versions/node/v6.2.2/lib
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>

Thanks for following up!


[ALLUXIO-2326] Fix javadoc in AlluxioShell

https://alluxio.atlassian.net/browse/ALLUXIO-2326
Update the javadoc for #printUsage from

    Method which prints the method to use all the commands.

to

    Prints usage for all shell commands.

Can one of the admins verify this patch?

alluxio-bot, check this please

ok to test

add to whitelist

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/13900/Failed Tests: 1org.alluxio:alluxio-tests: 1alluxio.master.MasterFaultToleranceIntegrationTest.createFileFault
Test FAILed.

Jenkins, test this please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/14080/
Test PASSed.


Index receives api key

Fixes #784
This PR makes it so that when index --watch or scan --watch is executed from the VS Code extension, the APPMAP_API_KEY is set as an environment variable.

Deferred for now to focus on UX improvements.


docs: guide updates for v10

Please verify the following:

[ ] yarn test jest tests pass with new tests, if relevant
[ ] yarn lint eslint checks pass with new code, if relevant
[ ] yarn format:check prettier checks pass with new code, if relevant
[ ] README.md (or relevant documentation) has been updated with your changes
[ ] If this affects functionality there aren't tests for, I manually tested it, including by generating a new app locally if needed (see docs).

Describe your PR

Updates the Guide documentation to reflect some of the changes in v10

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Add read.js

Let's just pretend I named the branch correctly. This is what happens when you commit on Friday afternoon.


🔄 Synced file(s) with BetaHuhn/github-files

Synced local file(s) with BetaHuhn/github-files.

Changed files

Synced local  .github/workflows/release.yml with remote  workflows/versioning/release.yml

This PR was created automatically by the repo-file-sync-action workflow run #665786445

:tada: This PR is included in version 1.1.11 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[RESOLVED] Interface eth0(): High error rate (>2 for 5m)

Problem started at 15:39:29 on 2023.06.19
Problem name: Interface eth0(): High error rate (>2 for 5m)
Host: S100-Primario
Severity: Warning
Operational data: errors in: 3, errors out: 0
Original problem ID: 28922
Event details in Zabbix: http://<IP_ADDRESS>/tr_events.php?triggerid=23483&eventid=28922

Problem has been resolved in 15m 0s at 15:54:29 on 2023.06.19
Problem name: Interface eth0(): High error rate (>2 for 5m)
Host: S100-Primario
Severity: Warning
Original problem ID: 28922


[SPARK-13357][SQL] Use generated projection and ordering for TakeOrderedAndProjectNode

TakeOrderedAndProjectNode should use generated projection and ordering like other LocalNodes.

Test build #51403 has started for PR 11230 at commit 63833df.

LGTM pending Jenkins.

Test build #51403 has finished for PR 11230 at commit 63833df.

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

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

Merged build finished. Test PASSed.


The grpc stream must be finished in case of grpc proxy emmited YDB error

Changelog entry
https://github.com/ydb-platform/ydb/issues/3489
Changelog category

Bugfix

Additional information
...

Changelog entry
https://github.com/ydb-platform/ydb/issues/3489
Changelog category
Bugfix