Migrate AttachmentCarousel/index.js to function component

Details

Rewrote AttachmentCarousel as a functional component
Extracted prop types and default props to a separate file
Extracted createInitialState to a helper function

Fixed Issues

$ https://github.com/Expensify/App/issues/16113
Tests

[x] Verify that no errors appear in the JS console

Add multiple attachments (images and PDFs) in any chat.
Tap/click to open an attachment, make sure the right attachment is opened.
Scroll or swipe between attachments.
Test out the zoom and pan features.
Make sure the arrow buttons appear / disappear correctly on each platform.

Offline tests

None.
QA Steps

[x] Verify that no errors appear in the JS console

Add multiple attachments (images and PDFs) in any chat.
Tap/click to open an attachment, make sure the right attachment is opened.
Scroll or swipe between attachments.
Test out the zoom and pan features.
Make sure the arrow buttons appear / disappear correctly on each platform.

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

https://github.com/Expensify/App/assets/39824924/8c70a8da-1087-4754-b689-9480b1a3a7cf

Mobile Web - Chrome
https://github.com/Expensify/App/assets/39824924/6dfcea14-d9f2-4fe2-808b-274c00b28334

Mobile Web - Safari

https://github.com/Expensify/App/assets/39824924/0799162e-a4be-4693-93d3-34874126af23

Desktop
https://github.com/Expensify/App/assets/39824924/24955898-02c4-42b2-8129-779cf8b1c2ff

iOS

https://github.com/Expensify/App/assets/39824924/04cb1835-4bf1-48d4-a9fa-43dd2a693666

Android
https://github.com/Expensify/App/assets/39824924/5eaf9104-8004-4f10-a475-e5a41428e943

@fedirjh I addressed all of the issues you mentioned here.

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/joelbettner in version: 1.3.47-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/Beamanator in version: 1.3.47-6 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Unable to run dockerized application following FastAPI docs

First Check

[X] I added a very descriptive title to this issue.
[X] I used the GitHub search to find a similar issue and didn't find it.
[X] I searched the FastAPI documentation, with the integrated search.
[X] I already searched in Google "How to X in FastAPI" and didn't find any information.
[X] I already read and followed all the tutorial in the docs and didn't find an answer.
[X] I already checked if it is not related to FastAPI but to Pydantic.
[X] I already checked if it is not related to FastAPI but to Swagger UI.
[X] I already checked if it is not related to FastAPI but to ReDoc.

Commit to Help

[X] I commit to help with one of those options 👆

Example Code
from typing import Optional

from fastapi import FastAPI

app = FastAPI()

# app.py
@app.get("/")
def read_root():
    return {"Hello": "World"}

@app.get("/items/{item_id}")
def read_item(item_id: int, q: Optional[str] = None):
    return {"item_id": item_id, "q": q}

# dockerfile
ROM python:3.7

RUN pip install fastapi uvicorn

EXPOSE 80

COPY ./app /app

CMD ["uvicorn", "app.main:app", "--host", "<IP_ADDRESS>", "--port", "80"]

Description
Following Deploying with Docker tutorial, I can't run the example given here https://fastapi.tiangolo.com/deployment/docker/.
The app.py and dockerfile as per example code.
Follow the same folder structure
Operating System
Windows
Operating System Details
No response
FastAPI Version
0.68.0
Python Version
3.7
Additional Context
No response

what is the error you are getting?

read the doc -> https://docs.docker.com/engine/reference/builder/#expose
docker run -p <IP_ADDRESS>:80:80/tcp myfastAPI

what is the error you are getting?

There was no error message. When I went to docker host and localhost, it showed Windows IIS.

@pasca15 Try using a different port than 80 e.g. 8000 in your Dockerfile. Your IIS is running on the same port 80 causing uvicorn to not start.
CMD ["uvicorn", "app.main:app", "--host", "<IP_ADDRESS>", "--port", "8000"]

Hi both, I have found it working in postman, although still not working in my browser. I'm happy with that it can work with postman.


Add descriptions for branch, commit, remote, diff

Great!  I'll merge this in and combine it with the other class's submission.


allow setting CF_DIAL_TIMEOUT

Given Australia is as far away from PWS as is the moon,
When my Concourse in Australia tries to do a deploy to PWS in the USA
It runs out of juice during the huge round trip and times out.
When I do a manual deploy locally
I have to set the timeout with the following:
CF_DIAL_TIMEOUT=300 cf api https://api.run.pivotal.io`
Reading source code with my limited golang glasses on I am not able to clearly see if this can be done.

This is something that would be a wonderful PR to accept.
If you're interested, please start by looking at our Contributing Guide
I've also attached this to the Help Wanted milestone.

I have submitted a PR for this (https://github.com/concourse/cf-resource/pull/31)
Trying out the resource
Also if you want to test out the resulting resource from docker, it is available on dockerhub:
(https://hub.docker.com/r/chrispassurity/cf-resource/) which can be used with the following pipeline configuration (creds etc from file!):
---
resource_types:
- name: cf-resource-chrisp
  type: docker-image
  source:
    repository: chrispassurity/cf-resource

resources:
- name: resource-deploy-web-app
  type: cf-resource-chrisp
  source:
    api: {{cf-api}}
    username: {{cf-username}}
    password: {{cf-password}}
    organization: {{cf-organization}}
    space: {{cf-space}}
    skip_cert_check: true
    command_environment_variables:
      CF_COLOR: true
      CF_DIAL_TIMEOUT: 15
      CF_TRACE: true

I would also appreciate this!

This should be resolved by https://github.com/concourse/cf-resource/pull/33 - thanks @DaxterM!


Remove drawing to minimap when "hide minimap" plugin is enabled

Examples: shouldn't draw player name and fishing spots to map when the minimap is hidden. Not sure what other plugins draw to the map.

Needing to add a check for this in every plugin that ever touches the minimap graphically seems kinda error-prone. In the case of the fishing plugin, this is probably decent opportunity to replace our slightly-sketchy "yeah, we'll just do the math ourselves and draw some dots over top of the minimap" with actual calls to the builtin "draw a dot plz" methods.
It'd be pretty cool if there was a similar text-drawing thing we could take advantage of for the player names, but unfortunately I can't think of any instances where they draw text on the minimap in the course of normal gameplay.


[do not merge] Preview html attachments using the draft stack

https://trello.com/c/cLVn6spv/31-switch-html-publications-to-use-draft-stack-when-previewing-content

The HtmlAttachment#url method needs to return the full URL
in preview mode because the links need to go to draft-origin.
When not previewing (.e.g presenting the attachment to send
to Publishing API), we can use a relative path because that'll
be served alongside the edition on GOV.UK.

Previewing is now handled by the draft stack so we
can remove this code from Whitehall. We leave the
routes so we can use them as path helpers, but set
the controller action to # to indicate Whitehall
isn’t able to serve those requests.

It would be good to get someone from the old Core team to take a look at this since they should have more context about HTML Publications and their migration to publishing-api.

I think Graham's back on Monday so I'll leave this for now and run it past him.

After some manual testing, I noticed we also need to change the html attachment links on published editions as well as drafts. These should point to GOV.UK in production and www-origin in integration/staging.
The documents/_attachment.html.erb partial is used when we present the code to send downstream to Publishing API. We need to make sure we use a relative path in this context as this is how it behaves now. Otherwise, we should use absolute paths to force the user's browser away from whitehall-admin and to GOV.UK or www-origin.
We did some work to remove the publication/statistics frontend code which should hopefully make this simpler because there are fewer things using that partial.
(https://trello.com/c/kfyYY4tf/73-9-publications-migration-final-tasks-deploy-2-05-days)


Text Extractor multi monitor issues

Microsoft PowerToys version
0.78.0
Installation method
GitHub
Running as admin
Yes
Area(s) with issue?
TextExtractor
Steps to reproduce

PowerToysReport_2024-04-02-09-31-24.zip
✔ Expected Behavior
When I use the shortcut, all screens dim and i can draw a box anywhere on screen
❌ Actual Behavior
When I use my shortcut to start text extractor (ctrl win shift s) my 4th monitors wallpaper shows up on my 1st monitor, everything gets moved around and I see little copies of my other monitors in random places on my primary monitor. Scaling seems to break completely. Everything moves back when I cancel the operation.
Other Software
No response

/dup #31992


⚠ Bofrost.at has degraded performance

In 3743fcf, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2668 ms

Resolved: Bofrost.at performance has improved in a0a1918.


Increase notes width in PDF report

Columns increased to 1000 to avoid pandoc assigning widths

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@bcd3021). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master       #1   +/-   ##
=========================================
  Coverage          ?   73.27%
=========================================
  Files             ?       19
  Lines             ?     3266
  Branches          ?        0
=========================================
  Hits              ?     2393
  Misses            ?      873
  Partials          ?        0

Flag
Coverage Δ

#aux
73.27% <0.00%> (?)

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 bcd3021...4f2e046. Read the comment docs.


possible fix to #7

based on insights gained from: https://leetcode.com/problems/sum-of-two-integers/discuss/302977/C++:-the-evil-runtime-error:-left-shift-of-negative-value-reason-and-how-to-solve

Codecov Report

Merging #8 (08d8e2f) into main (fe30250) will not change coverage.
The diff coverage is 100.00%.

:exclamation: Current head 08d8e2f differs from pull request most recent head 639f56b. Consider uploading reports for the commit 639f56b to get more accurate results

@@           Coverage Diff           @@
##             main       #8   +/-   ##
=======================================
  Coverage   88.77%   88.77%
=======================================
  Files           7        7
  Lines         784      784
=======================================
  Hits          696      696
  Misses         88       88

Impacted Files
Coverage Δ

src/AxivityNumUnpack.cpp
100.00% <100.00%> (ø)

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


Move pytest.reverts to brownie.reverts

Overview
Move pytest.reverts to brownie.reverts.  The current syntax is visually close to pytest.raises and creates ambiguity around where this functionality is actually coming from.  Also, monkeypatching kills kittens and that makes @fubuloubu sad.
Specification

In the next minor release:  (completed in commit 9228889)

[x] make the RevertContextManager available as brownie.reverts
[x] add a DeprecationWarning to pytest.reverts
[x] update documentation

In the next major release:

[ ] remove pytest.reverts

Dependencies
Part one should be included in #295, part two has to wait for Brownie 2.0.0.

Closing in favor of #399


[darwin-framework-tool] timed Interactions only work with commands that require them

Noticed that while testing with darwin-framework-tool that timed interactions (adding --timedInteractionTimeoutMs 200) don't appear to be working with all commands. For example:
 ./darwin-framework-tool onoff off 0x00000000000008B9 1 --timedInteractionTimeoutMs 200

Will properly send the off command to the server, but on the server side, I do not see any TimedRequestMessage log lines.
However running:
./darwin-framework-tool doorlock lock-door 0x00000000000008B9 1 --timedInteractionTimeoutMs 200

Results in the actual timed request being sent to the server.
Not sure if this is really a big deal, but the standard Chip-tool sends a timedInteractionRequest for any command if the --timedInteractionTimeoutMs argument is used, regardless of the command.

This is not intended behavior.  It's a bug in the fix for #17998.  Fix coming up.

And for what it's worth, the argument was ignored for commands that don't take arguments, regardless of whether they require a timed invoke or not.


Fix broken args eval_dir on modyn-client

What is the current case
Currently, the eval_dir arg on modyn-client is practically unusable: it is a required arg; the client throws an exception if this path does not exist on host system; supervisor throws an exception if this same path does not exist on supervisor's container. Therefore user can practically set nothing to eval_dir instead . (a reference to the current working directory, possibly the only value that can pass both checks)
Then users need to use docker cp <more args> to manually copy evaluation files from supervisor container to host.
What it would be after this PR
Supervisor has a default location, eval_base_path to store evaluation results (on supervisor container), whose value is in modyn_config.yaml. It is up to the users to decide how to map this path to host filesystem, e.g. via volume mapping or named volume in docker-compose.yaml. The eval_dir arg on modyn-client becomes a relative path to eval_base_path, i.e. if eval_base_path is /evaluation_results and eval_dir is my_evals, then the evaluations will be stored in /evaluation_results/my_evals on supervisor's container.

Pinging @jenny011 here - see my message on Element about this :-)

Thanks, Xianzhe! However, I would like to go with the FTP solution that we initially thought of (I hope what I mean by that is clear from my message in element - if not, let me know!).
The reason is that the modyn-client might not live on the same machine as the supervisor server. Right now, that is very much likely the case, but the general idea is that you can have Modyn running, e.g., on a sgs-gpu machine, and start a pipeline using modyn-client on your local laptop. In this case, there is no way to access the mounted directory. This is why we should transfer the logfiles via FTP instead. If you could implement that instead, that would be very much appreciated. I guess you could also reach out to @jenny011, but I think the biggest issue was that we need to have a FTP passive port range and active ports. Using https://pyftpdlib.readthedocs.io/en/latest/api.html#pyftpdlib.handlers.FTPHandler.passive_ports, we should be able to set that.

Thanks for explaining the vision! I agree with you on the direction that the modyn-client should be run on any machine apart from the modyn server, but I think enabling the FTP for now is an overkill, because:

Having a solution that works locally is better than leaving the current bug. And with this PR, it will make our experimentations later much more efficient. We can still implement FTP later after this PR, but solving the bug and making our experiment-workflow more convenient is more important for now. Let's build up the solution iteratively.
Without FTP and with the client on a different machine, the client can still download logs from the server by, for example, scp.

Therefore I am still inclined towards merging this PR now to make experiments easier. I can create an issue to discuss FTP/how we should implement the file transfer in a remote-server setting. What do you think?


Move to assertj + junit 5

I can help with this.

@vpondala that would be amazing!

@rybalkinsd Please let me know if you know why the build is failing now: https://travis-ci.org/rybalkinsd/kohttp/builds/593529245. I am getting this error "java.lang.NoClassDefFoundError: Could not initialize class io.mockk.impl.JvmMockKGateway" on my local, and I am sure that's unrelated to my AssertJ changes.

@vpondala  Let me check

@vpondala please check https://travis-ci.org/rybalkinsd/kohttp/builds/593529245
Failing test is an integration test with postman-echo. So probably a service issue. It'll be great to move more and more tests from being integration to unit + mocks in the near future.

@rybalkinsd, is this issue done?


assignment5_Tiffany

@qtccc - I like your nb. Unfortunately your PR is a bit messed up with many merge conflicts, overall good job with assignment but won't be able to merge this to main.
Score - 95/100


Fix quantity overflow

fixed quantity overflow

Codecov Report

Merging #146 into master will decrease coverage by 0.05%.
The diff coverage is 20.00%.

@@             Coverage Diff              @@
##             master     #146      +/-   ##
============================================
- Coverage     75.09%   75.03%   -0.06%
  Complexity      864      864
============================================
  Files           125      125
  Lines          2554     2556       +2
  Branches        288      289       +1
============================================
  Hits           1918     1918
- Misses          534      535       +1
- Partials        102      103       +1

Impacted Files
Coverage Δ
Complexity Δ

...dress/logic/commands/AddQuantityToItemCommand.java
84.78% <20.00%> (-3.86%)
13.00 <0.00> (ø)

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 0620257...9786c79. Read the comment docs.


Notification on start and end on pauses

Description
Notification on start and end on pauses
Feature Domain
Plase check any of the chackbox that is related to your request:

[x] UI/UX Improvement
[ ] Avoid people from making mistake
[ ] Creativity
[ ] New fucntionality
[ ] Extend support

Screenshots
[If there is any related screenshots, simply put it here. Otherwise write 'No Screenshots'.]
Additional context
Hi, ask you, add notification with sound on start and on end of pauses. Thank's

I'm interested in this but how exactly should the notifications be implemented? Will it be like a regular Windows 10 Toast notification?

@colinkiama Take a look at https://github.com/0xaryan/EyesGuard/blob/a6bed66bfc0002b3effc64ee4c81d28d50a6b695/Source/EyesGuard/App.TimingAndControl.xaml.cs#L101
You can access app configuration using App.Configuration.SomeProperty and show a notification using App.TaskBarIcon.ShowBalloonTip(title, message, icon)

Awesome! Will create a PR once I'm done

I've managed to make a commit. (The main change is in: Source/EyesGuard/App.Properties.xaml.cs)
https://github.com/colinkiama/EyesGuard/commit/5064e97693c31dec971ffc4d46a850f93d5d6bb7
Unfortunately, I can't see any balloon tips, even when I select the "Long Break" option. So I won't be able to help out with this anymore.


updated, fleshed out 17.03 stable and edge relnotes per actual release

@friism @ebriney better bug list on 17.03 CE stable than I had last night, per the final release checklist and change notes
Signed-off-by: Victoria Bialas<EMAIL_ADDRESS>

LGTM, merging


Help Please

I saw this code and I need help, for me is a little different, because my school changes every class the ID there’s a website of our school and there they put the link a few minutes before the class starts so it’s a little difficult to me use that code like there is right now, so a ask for you, if you can help me

And in this website there is a Username and password to enter but each student have yours, so I have mine, if anyone with good heart can help me

I guess you ll have to find another script to take username and password from your website, and put it into the excel sheet.


Global color and font update for OS Hub

OAR confirmed Figma boards are source of truth for fonts and colors.

The font for the new design is Darker Grotesque.
I suspect if we change the link tag url index.html to
https://fonts.googleapis.com/css2?family=Darker+Grotesque:ital,wght@0,400;0,500;0,700;1,400;1,500;1,700&display=swap

And replace DM Sans with Darker Grotesque in our stylesheets that should take care of it.


Using sniprun as an API

Is your feature request related to a problem? Please describe.
I am currently developing an extension that grabs code snippet from markup languages (like markdown, rst, neorg, orgmode), and I was looking into good methods to execute the code (in addition other features like save to disk through tangle).
I could make something myself, by see that sniprun is clearly superior to anything I could make.
Unfortunatly, using sniprun as a library for this purpose seem to be a bit difficult, as it is clearly meant to be a user tool.
Describe the solution you'd like
I'd like a more flexible entrypoint in the code. For example expand the notify function to have the signature:
require"sniprun".notify("run", start, end_, filetype, {display = "rpc"})

With:

filetype -- the filetype to assume, nil/"" means get type from buffer
display = "rpc" -- allow for the result to be fetched through an interface that uses rpcrequest (using e.g. buffer number as identifier).

Describe alternatives you've considered
An even more flexible design would be to allow passing arbitrary strings, like:
local stdout = require"sniprun".api_run(string_of_code, filetype)

But that would require a blocking design.

Hi!
I'm very happy you take interest into sniprun :-)
What you're asking for may be, depending on the details a complete rework or just a small change.
Here are my two cents:

a Rust crate/API ? Would allow for blocking design, may be simple to do but hard to use. (You'll need to link into Rust from whatever language you're using). It'll also be more general (usable outside neovim), so bonus pointsfor that.

a Lua async API ? Doable actually, even though sniprun will stay quite integrated with neovim. I can implement a new display type like you suggested, one that doesn't display anything but instead send back a RPC message to some listener.

a Lua blocking API (beyond doing it the async way + wait till message come back)...? 😬 Might be beyond my competences, and require too much work

Things like taking a string as input are easy peasy details imo, but consider that any features depending on Import level or above will be out of reach.
I'll tackle this as soon as I get some free time,  I'll probably be able to do something, but if you have any ideas or anything that might help, please share your thoughts

I think a non-blocking design is preferrable. It is just nicer.
And since I am making a neovim extension as well, my preferrance goes to a Lua async API.
I think that if we in the short term can do the simple thing of just having optional filetype as input. I believe I can make sniprun work with that. And after I've made my extension, we can have another look at what is a good idea or not.
Sounds good?

You can try out a WIP of a future api on the dev branch :-)
Plug 'michaelb/sniprun', {'branch':'dev', 'do': './install.sh 1'}

Cool, I'll take a look.

I don't seem to be able to get Sniprun to work with the dev branch, not the new api command nor the original SnipRun command. The latter works fine when switching back to master though.
Here is my setup with Python:
    require'sniprun'.setup({
      selected_interpreters = { 'Python3_fifo' },
      repl_enable = {'Python3_fifo'},
      interpreter_options = {},
      display = {"VirtualTextOk", "LongTempFloatingWindow"},
    })

Any suggestions as what is going on?

Forgot to mention, the Rust toolchain is needed to build the binary on the dev branch. I only provide binaries for stables releases, so individual commits have to be compiled by the user. (You may need to remove & add back sniprun in your plugin manager)
:checkheatlh sniprun should tell you the same thing and maybe more

Sorry, this week suddenly got very busy at work so my hobby project time has all but disapear.
Glad to hear that the feature is stable, and the problem for me was just the lack of compiling the binary. I dobt that would be a problem from my end.
I'm going to take another look, when I have more time again. :)

No worries, there's no deadline

Hi, any news?
I'm readying to release 5.10, so any changes to the current API will have to wait for the next (5.11) release unless you have last-minutes suggestions :-)

I appologies for the silence. I work in projects that take all of my time in periods. Right now it is particular hectic, and I hae no time for hobby projects.
I have looked at the new API part of the code and it looks great. I just haven't tried it out yet.

Sure, 5.10 is nothing more than a version. If you don't have the timenow, any feedback will be integrated into the next one as I said, this was nothing more than a notice
Take care :-)
I'll be closing this issue at some point, but feel free to link or reopen if you'd like to discuss related enhancements


FFT node update

To access Flojoy-studio build from this pull request, you can use the following URLs:
http://<IP_ADDRESS>:3000
http://533.flojoy-test.com:3000
Please note that it may take a few minutes for the instance to start up, so please be patient.
It is important to know that the instance will automatically shut down after one hour to conserve resources. If you wish to start the instance again after it shuts down, you can use this API :
https://kgpsoscpc4q52d4mtwuu7jhvie0qdiso.lambda-url.us-east-1.on.aws/start_instance?instance_id=i-0ff845726bcedb77e


Remove dependency on paket

This is a proposal PR that removes dependency on paket -- sorry I could not get tests to work in #7 and paket IMHO adds to much complexity for newbie F# dev like me..
freel free to shoot it down, it looked to make sense for me but not necessarily..

That's fine by me, this repo is very small and doesn't have multiple projects, which is where paket starts to shine. I'd suggest using a git subrepo or something for the FsLibLog dependency instead of directly embedding it, though, because at least a git subrepo tracks the commit state if/when that file updates.

Dropping Paket here seems Fine for me if we can get FsLibLog in some not-more-complex-than-Paket way ;-)

@Krzysztof-Cieslak I was actually thinking of making another small msbuild project to replicate the github-file features in paket for partially this reason.
mini-spec:

<GithubFile Include="relative path from repo root" Repo="<repo shorthand>" Ref="git ref/tag/sha/branch" LocalPath="file will be downloaded to obj directory, this optional property determines what the file looks like in IDEs" />
element allows an optional set of <Replace Match="source string" Replacement="destination string" /> that can go inside the xml element as children
a restore-time task that

downloads that file to the obj directory
runs any replacements on it
creates a marker file used for fast-up-to-date-checks
creates a Compile project item, so that the file is included in the build
adds both of these files to the FileWrites msbuild property so that clean works as you'd expect.

outstanding question is how to handle github auth, probably just require an ambient token for v1, etc.

My 2¢: having a regular dotnet non-packet build would be great, because then it'd be much easier to vendor this lib as a git submodule, and hence easier to make changes/improvements, and contribute them upstream.
What I'm doing now is I've copy-pasted the LanguageServerProtocol.fs and FsLogLib.fs directly into my project as the current master version lacks some parts of the protocol that I need.
As a side question: what's so bad about just manually copying FsLogLib into this repo. Looking at the project releases, there's not that much traffic going on; so manually updating this single file doesn't seem like a big deal, given that it'd seriously simplify the project setup.

It's probably not the worst thing in the world to manually copy FsLibLog.

@baronfel You have just broken my heart :P
But sure, if y'all think this is the way to move forward, please go ahead.

OK, I have updated this PR by rebasing on top of main and removing conflicts

Versioning should remain using the CHANGELOG.md mechanism that Ionide.KeepAChangelog enables. We shouldn't need to information track that in a Directory.Build.props.

@baronfel ok, how does it look now?

Looks great! I made a minor packaging change that I thought of during review - pinning the FSharp.Core reference in this repo to 6.0.0 so that the generated package dependency is >= 6.0.0, so consumers don't have to be on the latest and greatest 6.0 SDK to use this package.


DRILL-5188: Expand sub-queries using rules

Before this change, sub-queries were rewritten in SqlToRelConverter. During such expansion, excessive aggregate calls were created. Due to these excessive aggregate calls, some rel nodes weren't able to transpose to Aggregate rel node and the resulting plan was inefficient and in the most cases with joins with true in condition. As discussed in CALCITE-2158, a better approach to expand sub-queries is to use SubQueryRemoveRule rules.
This PR contains two commits:

the first one contains changes to use SubQueryRemoveRule rules instead of expanding in SqlToRelConverter.
the second commit contains introducing single_value aggregate function which is used when filter contains a comparison of value and subquery and in some SubQueryRemoveRule rules.

@amansinha100, could you please take a look?

@amansinha100, I made single PR because sub-query transformation rules for some cases, which worked before without SINGLE_VALUE function, use this function. So in order to avoid blocking one PR by another, I created one PR with these changes.

@vvysotskyi Fair enough to keep the two changes together in this PR.   For my understanding, can you pls provide an Explain plan for a sample query based on this PR ?

Modified plan and code changes LGTM.  +1


Run tests against latest insiders

Codecov Report

Merging #11730 (cfbd057) into main (543900b) will decrease coverage by 15%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##            main   #11730      +/-   ##
=========================================
- Coverage     59%      44%     -16%
=========================================
  Files        483      300     -183
  Lines      34509    23431   -11078
  Branches    5609     4061    -1548
=========================================
- Hits       20401    10315   -10086
+ Misses     12128    11971     -157
+ Partials    1980     1145     -835

Impacted Files
Coverage Δ

src/platform/common/utils/stopWatch.ts
16% <0%> (-84%)
:arrow_down:

src/kernels/execution/cellExecutionCreator.ts
5% <0%> (-76%)
:arrow_down:

src/kernels/execution/cellExecutionQueue.ts
6% <0%> (-75%)
:arrow_down:

...ls/raw/session/rawNotebookSupportedService.node.ts
17% <0%> (-74%)
:arrow_down:

src/kernels/common/kernelSocketWrapper.ts
7% <0%> (-74%)
:arrow_down:

src/platform/webviews/webviewPanelProvider.ts
12% <0%> (-68%)
:arrow_down:

...ls/jupyter/session/jupyterSessionManagerFactory.ts
33% <0%> (-67%)
:arrow_down:

src/platform/common/application/workspace.base.ts
11% <0%> (-66%)
:arrow_down:

src/kernels/common/kernelConnectionWrapper.ts
4% <0%> (-66%)
:arrow_down:

src/platform/common/process/proc.node.ts
17% <0%> (-64%)
:arrow_down:

... and 330 more


Handle long questions

At the moment the label of XWT does not wrap, so the window can not be smaller than the question label is. All attempts to use XWT to set this property failed and resulted in strange behaviour.
Maybe there is a custom label needed to solve this.

Just for the record:
It was of course a mistake by me. The label did not expand and did not use the whole box, so it couldn't wrap and alignment was failing as well. Coloring the background of the label for debugging purposes was helpful though.


Fix/edit labeling tutorial

Edits based on issue 716. Added some format improvements and some grammar improvements, too.

Would it be possible to update the images to the latest UI too? If it's not possible for all of them we could remove some of them

Would it be possible to update the images to the latest UI too? If it's not possible for all of them we could remove some of them

Yes, absolutely. I wanted to ask you how did you record/edit videos and pictures. I will text you tomorrow, then :)

I think I committed all changes. Will do the images and rebasing next day!


refactor: devnet,mainnet --> sandbox,livenet

rename devnet -> sandbox
rename mainnet -> livenet
fix explorer urls
wallet address prefix

https://spacelephant.tpondemand.com/entity/1932

DON'T MERGE

Superseded by https://github.com/unik-name/docs.uns.network/tree/sandbox-master_tp_1931


Load data from a JSON file using Cereal

We need a way to serialize all component data from the engine to a Level file. This will allow the user to read/write their systems' data.
There will be something that triggers the loading of a level with a specific GUID.
World::LoadLevel(GUID t_FileName) will do the following:

Unload the current level (clear the entt registry) of non-persistent objects
Open a Cereal file stream to the given file name
Call Read(m_registry, archive) on any core systems that we need
Call Read on the Game implementation itself

This will allow the engine to control its core systems serialization in order, while giving the user the same power.
Every system owns the manipulation of its component's data, so the serialization of components should be handled by systems (not template args on each component)

Doing this with Cereal isn't going to work how I would like. Just going to use the json library because it will be simpler to use and provide more readablity in the JSON file itself.

Complete with #65


map which returns tuples of vectors would also be nice

Thanks for making Unzip. I appreciate it.
My main use-case for unzip, though, is returning a tuple of vectors from map rather than a vector of tuples. Would this be possible to add to Unzip?

I think it should work already! You could even use Iterators.map for even more performance. Do you have an example?

No, I mean a version of map that does it automatically, i.e.
julia> function maptup(f, args...)
           out = Tuple.(map(f, args...))
           unzip(out)
       end
maptup (generic function with 1 method)

julia> a, b = maptup(rand(10)) do x
           (x + 1, x - 1)
       end
([1.4738536202542285, 1.865283772114408, 1.1367533401175127, 1.680097789641812, 1.6853770322606707, 1.6453793708506164, 1.8524757820092266, 1.4489005984590795, 1.693449394611504, 1.8753358407742735], [-0.5261463797457715, -0.134716227885592, -0.8632466598824873, -0.3199022103581881, -0.3146229677393293, -0.35462062914938364, -0.14752421799077342, -0.5510994015409205, -0.3065506053884961, -0.12466415922572649])

If people are so concerned about performance in the julia issue, then better to attack the problem directly by avoidingthe intermediate allocation of out.

Right, this should work out of the box:
@btime a, b = unzip(Iterators.map(rand(10)) do x
    (x + 1, x - 1)
end)
# 216.867 ns (4 allocations: 720 bytes)

oh, cool.
One final motivation for having this in its own function (beyond saving typing), is that this could potentially also be a map! version of this as well. Where you fill in elements of a named tuple. This can probably be it's own package though.

Hmm, actually, I think that's also possible using some of the internals of this package.
using Unzip: Rows
vectors = Rows(((Vector{Int}(undef, 10), Vector{Int}(undef, 10))))
map!(x -> (x - 1, x + 1), vectors, 1:10)

I suppose I could write up a docstring for Rows and export it?


CreateStreamRequest missing from client

I'm still trying to figure out how the codegen works, but it appears the that client for interacting with CreateStreamRequest is missing?
Any ideas why?

I've had a play around this morning trying a few different ways of generating the Swagger JSON/YAML, before feeding it to the Golang codegen, but no luck. I'm not sure why it skips over certain verbs
I've added a slightly different Swagger spec for reference, but at the moment it still results in the same missing code.


Fix ordering for welcome and logging.stacktrace props

Fixes #22702
The formatting issue had already been fixed by Paul Merlin in bb48afba60947b907f1cc2544f04275fa0e1ddd2.
Context
Fixes ordering of last two Gradle properties in docs.
Contributor Checklist

[X] Review Contribution Guidelines
[X] Make sure that all commits are signed off to indicate that you agree to the terms of Developer Certificate of Origin.
[X] Make sure all contributed code can be distributed under the terms of the Apache License 2.0, e.g. the code was written by yourself or the original code is licensed under a license compatible to Apache License 2.0.
[X] Check "Allow edit from maintainers" option in pull request so that additional changes can be pushed by Gradle team

Not applicable

[ ] Provide integration tests (under <subproject>/src/integTest) to verify changes from a user perspective
[ ] Provide unit tests (under <subproject>/src/test) to verify logic
[ ] Update User Guide, DSL Reference, and Javadoc for public-facing changes
[ ] Ensure that tests pass sanity check: ./gradlew sanityCheck
[ ] Ensure that tests pass locally: ./gradlew <changed-subproject>:quickTest

Gradle Core Team Checklist

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation
[ ] Recognize contributor in release notes

Hi @sourcedelica,
The DCO check is failing, could you please sign off your commits?
See https://github.com/gradle/gradle/pull/22703/checks?check_run_id=9447119770

Fixed - sorry about that!

@bot-gradle test BD

OK, I've already triggered the following builds for you:

BuildDistributions build

@bot-gradle test and merge

No milestone for this PR. Please set a milestone and retry.

@bot-gradle test and merge

Error while scheduling pre-tested commit, please contact the administrator.

@bot-gradle test and merge

Error while scheduling pre-tested commit, please contact the administrator.

@bot-gradle test and merge

Error while scheduling pre-tested commit, please contact the administrator.

@bot-gradle test and merge

Error while scheduling pre-tested commit, please contact the administrator.

@bot-gradle test and merge

OK, I've already triggered a build for you.


Bump submodules incl. litex, litex-boards.

Signed-off-by: Tim Callahan<EMAIL_ADDRESS>

LGTM

This brings in a change from LiteX that Joey needs for other PRs: https://github.com/enjoy-digital/litex/commit/c79e428fe195f357a4bf616a643250904e848188

I tested my WIP HPS accelerator project on Arty with these changes, looks fine to me

Thanks Dan!


Local setup - Developer guide steps not working

The documented steps under https://github.com/apache/camel-karavan/blob/main/docs/DEV.md are not working on windows.
Example : The command in step 3:  "mvn clean package -f karavan-app -Dquarkus.profile=public " fails to execute.
Getting message:
[INFO] [io.quarkiverse.quinoa.deployment.packagemanager.PackageManager] 'cp' is not recognized as an internal or external command,
[INFO] [io.quarkiverse.quinoa.deployment.packagemanager.PackageManager] operable program or batch file.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
Please help resolve this issue in order to build Karavan UI and backend from source and be able to experiment with code changes.

if you're running on windows you have to replace "cp" with "copy"


Add properties to set agent timeout

Is your feature request related to a problem? Please describe.
When I use nats bosh director 3 steps rotation for some deployments, agent restart takes too long time with arping on public ips, and at the end the deployment failed.
=> Agent restart
2022-07-06_15:43:17.97473 [main] 2022/07/06 15:43:17 DEBUG - Starting agent
2022-07-06_15:43:18.00893 [File System] 2022/07/06 15:43:18 DEBUG - Checking if file exists /var/vcap/bosh/update_settings.json
2022-07-06_15:43:18.00895 [File System] 2022/07/06 15:43:18 DEBUG - Stat '/var/vcap/bosh/update_settings.json'
2022-07-06_15:43:18.00896 [File System] 2022/07/06 15:43:18 DEBUG - Reading file /var/vcap/bosh/update_settings.json
2022-07-06_15:43:18.07189 [linuxPlatform] 2022/07/06 15:43:18 DEBUG - Getting remaining size of `/dev/vda'
2022-07-06_15:43:18.07189 [RootDevicePartitioner] 2022/07/06 15:43:18 DEBUG - Getting size of disk remaining after first partition

=> First request from bosh director (2mn15 before error)
D, [2022-07-06T15:43:26.790172 #24901] [canary_update(osb-relay/e223214f-e91f-4c7f-b14a-9aebcfc46295 (0))] DEBUG -- DirectorJobRunner: SENT: agent.827809e1-7482-45d7-938a-0652f13a74aa {"protocol":3,"method":"get_task","arguments":["3fb7641f-95ca-41ff-76fd-ec8951bf6bcd"],"reply_to":"director.b315c26e-a011-4d30-8bf1-ac2b84db5a08.827809e1-7482-45d7-938a-0652f13a74aa.986169d6-bab8-4326-b6e0-88ee57e36850"}

=> Arping for 1mn30
2022-07-06_15:43:18.22706 [Cmd Runner] 2022/07/06 15:43:18 DEBUG - Running command 'sync-time'
2022-07-06_15:43:23.07507 [Cmd Runner] 2022/07/06 15:43:23 DEBUG - Running command 'arping -c 1 -U -I eth0 <IP_ADDRESS>'
2022-07-06_15:43:23.07641 [Cmd Runner] 2022/07/06 15:43:23 DEBUG - Stdout: ARPING <IP_ADDRESS> from <IP_ADDRESS> eth0
2022-07-06_15:43:23.07641 Sent 1 probes (1 broadcast(s))
2022-07-06_15:43:23.07642 Received 0 response(s)
...
2022-07-06_15:44:48.10878 [Cmd Runner] 2022/07/06 15:44:48 DEBUG - Running command 'arping -c 1 -U -I eth0 <IP_ADDRESS>'
2022-07-06_15:44:48.10973 [Cmd Runner] 2022/07/06 15:44:48 DEBUG - Stdout: ARPING <IP_ADDRESS> from <IP_ADDRESS> eth0
2022-07-06_15:44:48.11042 Sent 1 probes (1 broadcast(s))
2022-07-06_15:44:48.11043 Received 0 response(s)

=> Connect to nats
2022-07-06_15:44:48.81492 [NATS Handler] 2022/07/06 15:44:48 INFO - Attempting to connect to NATS
2022-07-06_15:44:48.81545 [NATS Handler] 2022/07/06 15:44:48 INFO - Sending hm message 'heartbeat'
2022-07-06_15:44:48.81633 [NATS Handler] 2022/07/06 15:44:48 DEBUG - Cleaned ip-mac address cache for: <IP_ADDRESS>.
2022-07-06_15:44:48.82997 [NATS Handler] 2022/07/06 15:44:48 INFO - Subscribing to agent.827809e1-7482-45d7-938a-0652f13a74aa
2022-07-06_15:45:18.81928 [NATS Handler] 2022/07/06 15:45:18 INFO - Sending hm message 'heartbeat'

=> Timeout after 45s, then bosh director error
E, [2022-07-06T15:45:41.797723 #24901] [canary_update(osb-relay/e223214f-e91f-4c7f-b14a-9aebcfc46295 (0))] ERROR -- DirectorJobRunner: Error updating canary instance: #<Bosh::Director::RpcTimeout: Timed out sending 'get_task' to instance: 'osb-relay/e223214f-e91f-4c7f-b14a-9aebcfc46295', agent-id: '827809e1-7482-45d7-938a-0652f13a74aa' after 45 seconds>

To workaround this problem, I patch agent_client.rb ruby script to change agent start timeout and retries values:
FILE="/var/vcap/data/packages/director/*/gem_home/ruby/*/gems/bosh-director-*/lib/bosh/director/agent_client.rb"
RUBY_PATH="$(dirname ${FILE})"
RUBY_SCRIPT="$(basename ${FILE})"
RUBY_SCRIPT="${RUBY_PATH}/${RUBY_SCRIPT}"
sed -i "s+GET_TASK_MAX_RETRIES =.*+GET_TASK_MAX_RETRIES = 3+g" ${RUBY_SCRIPT}
sed -i "s+@timeout = options.*+@timeout = options[:timeout] || 60+g" ${RUBY_SCRIPT}

Describe the solution you'd like
It would be nice if we can use 2 new bosh properties to customize agent timeout instead of dirty patch on bosh release:

agent_restart_max_retries (default: 2)
agent_restart_timeout (default: 45)

Thanks

Which director version are you running on?

We are running bosh/273.0.0, with bosh-vsphere-esxi-ubuntu-bionic-go_agent/1.97

Since bumping to the bosh-deployment that uses NATS 2.0 (first with bionic) and now with Jammy, we are regularly seeing errors during compilation with:
Error: Timed out sending 'compile_package' to instance: 'compilation-xxx', agent-id: 'yyy' after 45 seconds

If we re-try a few times, eventually it seems to work.
I'm thinking it genuinely is a timeout, and would really like to be able to try extending it past the 45 seconds.
Would love to see some properties for this, particularly for the agent used on the compilation VMs.
(in case it's related, the VMs we are dealing with don't have outbound internet connectivity)

We're going to try this pre-start script on our director deploys and see if it helps with the next round of stemcell updates...
- type: replace
  path: /instance_groups/name=bosh/jobs/-
  value:
    name: pre-start-script
    release: os-conf
    properties:
      script: |
        #!/usr/bin/env bash
        set -euo pipefail

        # Bump agent timeout
        sed -i -e "s/\@timeout = options\[\:timeout\] || 45/\@timeout = options\[\:timeout\] || ${agent_timeout}/g" /var/vcap/packages/director/gem_home/ruby/3.1.0/gems/bosh-director-0.0.0/lib/bosh/director/agent_client.rb

This PR has just been merged: https://github.com/cloudfoundry/bosh/pull/2406


This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.
Originally posted by @github-actions[bot] in https://github.com/flutter/flutter/issues/60262#issuecomment-901020724

Unhandled exception:
FileSystemException: writeFrom failed, path =
'C:\Users\Samm\AppData\Local\Temp\flutter_tools.3434ade2\flutter_tool.9601de14\app.dill' (OS Error: There is not enough space on
the disk.
, errno = 112)
#0      _RandomAccessFile.writeFrom. (dart:io/file_impl.dart:852:9)

#1      _FileStreamConsumer.addStream... (dart:io/file_impl.dart:184:21)

the Dart compiler exited unexpectedly.

Duplicate of #60262.


Code inside function with rrule should not run

MWE:
using Zygote
import ChainRulesCore.rrule
using ChainRulesCore: NoTangent
using AbstractDifferentiation

function myfunc(x)
    println("This should not print if I have an rrule.")
    x
end

rrule(::typeof(myfunc), x) = (x, (y -> (NoTangent(), y)))

println("Zygote run:")
Zygote.gradient(myfunc, 1) # nothing prints
println("AD run:")
AD.derivative(AD.ZygoteBackend(), myfunc, 1) # something prints

The code inside of myfunc should never run. In addition to possible inefficiency, this may lead to incorrect/confusing results for stateful functions or stochastic functions.

My hypothesis (without checking it in detail) is that the problem is that the backend for ChainRulesCore integration (used also for Zygote in your example) uses the rrule to define the pullback function (https://github.com/JuliaDiff/AbstractDifferentiation.jl/blob/12a0e27d0f54e6300b725dfb9dafc21ef507b724/src/ruleconfig.jl#L10) but does drop the value of the primal completely, which therefore has to be recovered from the original function in value_and_pullback_function (https://github.com/JuliaDiff/AbstractDifferentiation.jl/blob/12a0e27d0f54e6300b725dfb9dafc21ef507b724/src/AbstractDifferentiation.jl#L248) which is e.g. used by derivative (https://github.com/JuliaDiff/AbstractDifferentiation.jl/blob/12a0e27d0f54e6300b725dfb9dafc21ef507b724/src/AbstractDifferentiation.jl#L38) via jacobian (https://github.com/JuliaDiff/AbstractDifferentiation.jl/blob/12a0e27d0f54e6300b725dfb9dafc21ef507b724/src/AbstractDifferentiation.jl#L567).
I think one "just" has to define value_and_pullback_function in terms of only rrule for these backends. This should avoid the unnecessary call of the original function.

Just noticed, there's already #34, #35, #36.


Remove assets watching

Remove assets watchfiles - anything dynamic during runtime should be placed in the uploaded_files/ directory instead.

Superseded by #3862


Make Repeating status check attempts configurable

When starting up the image, it says
"Repeating status check attempts another 14 times"
I would like to make this configurable.

Set IBEAM_MAX_STATUS_CHECK_RETRIES environment variable to modify the amount of times it retries.
Thanks for pointing it out, the documentation is out of date. I'll sit down to update it once I find a minute 🙏
See https://github.com/Voyz/ibeam/blob/master/ibeam/src/var.py for a most recent list of supported environment variables.


Support nerd fonts

It would be nice, if nerd fonts could be supported. These are quite common, if people play with their setup.

I haven't looked into it, but maybe it's enough to include one of the fonts and configure xterm to use it.

I noticed I created this issue not in https://github.com/elisescu/tty-server/issues/9 and is already worked on: https://github.com/elisescu/tty-server/pull/10/files
I experimented with xterm.js and Nerd Fonts. It will display glyphs.

      @font-face {
        font-family: "Fira Code Nerd Font";
        src: url("fira.ttf") format("truetype");
        font-variant-ligatures: none;
      }

        this.xterminal = new Terminal({
            ...
            fontFamily : "Fira Code Nerd Font"
        });

This actually got merged into https://github.com/elisescu/tty-server/pull/16 but didn't make it into the v2 overhaul / that consolidated the hosting into this project, and diminished the role of the corresponding external server to simply acting as a proxy.
Unfortunately, not all of the codebase was migrated across to this project, so the changes given by my PR didn't make it across to this repo yet.
I'll submit another PR soon


feat: method to disable the Parallax Controller #13

Codecov Report
Patch coverage: 61.53% and project coverage change: -0.78 :warning:

Comparison is base (3b101ab) 86.29% compared to head (7e7fa7e) 85.52%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##           master      #14      +/-   ##
==========================================
- Coverage   86.29%   85.52%   -0.78%
==========================================
  Files          28       28
  Lines         715      739      +24
  Branches      145      151       +6
==========================================
+ Hits          617      632      +15
- Misses         98      107       +9

Impacted Files
Coverage Δ

src/types.ts
100.00% <ø> (ø)

src/classes/Element.ts
96.87% <57.14%> (-3.13%)
:arrow_down:

src/classes/ParallaxController.ts
77.05% <63.15%> (-1.24%)
:arrow_down:

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

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


nmslib_vector.knnQuery() return query result count less then specify number k

For instance:
n_neighbors = 10
idx = nmslib_vector.knnQuery(indexer, n_neighbors, qdata)
print idx

But the return result idx items some time less than 10:
[7, 10, 14, 0, 5, 17]
[14, 12, 13, 15, 4, 1, 9, 2, 2, 0]
[8, 8, 1, 15, 14, 0, 13]
[13, 6, 10, 0, 0, 17]
[1, 14, 16, 13, 12, 10, 0, 15, 8]
[1, 1, 14, 3, 3, 0]
...

By the way, my data count to be indexed is about 20, not too may. But I think it should also return 10-NN result.

I used the small_world_rand method.
This is my code:
import numpy as np

n_neighbors = 10
index_data = np.loadtxt('test_data.txt', delimiter=',')
query_data = index_data[:5]

import nmslib_vector
print "build index"
query_time_param = ['initSearchAttempts=3']
method_name = 'small_world_rand'
index_name  = method_name + '.index'
space_param = []
space_type = 'cosinesimil'
index = nmslib_vector.init(
        space_type,
        space_param,
        method_name,
        nmslib_vector.DataType.VECTOR,
        nmslib_vector.DistType.FLOAT)
index_param = ['NN=3', 'initIndexAttempts=3', 'indexThreadQty=4']
for id, data in enumerate(index_data):
    nmslib_vector.addDataPoint(index, id, data.tolist())
nmslib_vector.createIndex(index, index_param)

print "query"
nmslib_vector.setQueryTimeParams(index, query_time_param)
for q in query_data:
    idx = nmslib_vector.knnQuery(index, n_neighbors, q.tolist())
    print idx

My test data set is also attached.
test_data.txt

Hi @honeytidy your code is fine, it's a bug. For very small data sets, this may happen. I will try to fix this in later versions. However, for such small data sets you are better off using brute-force, e.g., like this:
#!/usr/bin/env python

import numpy as np

n_neighbors = 10
index_data = np.loadtxt('test_data.txt', delimiter=',')
query_data = index_data[:5]

import nmslib_vector
print "build index"
query_time_param = ['initSearchAttempts=3']
#method_name = 'small_world_rand'
method_name = 'brute_force'
index_name  = method_name + '.index'
space_param = []
space_type = 'cosinesimil'
index = nmslib_vector.init(
        space_type,
        space_param,
        method_name,
        nmslib_vector.DataType.VECTOR,
        nmslib_vector.DistType.FLOAT)
#index_param = ['NN=3', 'initIndexAttempts=3', 'indexThreadQty=4']
index_param = []
for id, data in enumerate(index_data):
    nmslib_vector.addDataPoint(index, id, data.tolist())
nmslib_vector.createIndex(index, index_param)

print "query"
nmslib_vector.setQueryTimeParams(index, query_time_param)
for q in query_data:
    idx = nmslib_vector.knnQuery(index, n_neighbors, q.tolist())
    print len(idx),idx

PS: I cannot fix this immediately, b/c too many methods are involved. Later, we will separate methods into core and experimental and I will fix this only for core methods (who cares about small bugs in experimental ones)? :-)

OK, I got it. Thank you, @searchivarius.


Update jwt to the go modules compatible version and others

By time, all dependencies get go mod compatible

Codecov Report

Merging #24 (2736a64) into master (bd1683f) will increase coverage by 5.12%.
The diff coverage is 81.59%.

@@            Coverage Diff             @@
##           master      #24      +/-   ##
==========================================
+ Coverage   73.43%   78.56%   +5.12%
==========================================
  Files           3        8       +5
  Lines         256      639     +383
==========================================
+ Hits          188      502     +314
- Misses         58      102      +44
- Partials       10       35      +25

Impacted Files
Coverage Δ

user.go
22.91% <0.00%> (ø)

token.go
75.00% <75.00%> (ø)

issuercache.go
79.33% <79.33%> (ø)

dex.go
83.05% <83.33%> (+0.29%)
:arrow_up:

tokenheader.go
89.47% <89.47%> (ø)

genericOidc.go
91.54% <91.54%> (ø)

mac.go
88.04% <100.00%> (ø)

usergetterproxy.go
100.00% <100.00%> (ø)

... and 3 more

Continue to review full report at Codecov.

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


refactor: Implement Environment Variables to Secure Giphy API Key

Description: The Giphy API key is currently exposed in the codebase. To enhance security and prevent unauthorized access, we need to implement environment variables to store sensitive information like the API key. This should rely on a .env file for local development and secrets management in GitHub for production.
Expected Behavior: The application should access the Giphy API key from an environment variable instead of being hardcoded in the source code. This will help prevent the key from being exposed in the repository and ensure better security practices.
For deployment, set the Giphy API key as a secret in GitHub by navigating to your repository settings and adding it under "Secrets."
Ensure the deployment process reads from these secrets.
Ensure that the .env file is not committed to the repository.
Document the setup process in the project's README to guide other contributors on how to configure the environment variables locally.

I can work on this. Please assign this to me.

I am interested in working on it. Please assign this issue to me under gssoc-ext level2 and hactoberfest-accepted. @lcrojano

Hi .env works for server side js. process.env is not available in client side js. So how would this work?

Here is the official response to this question from GIPHY:
GIPHY APIs are designed to be used on the client side (and hence the API key too). You should go ahead and use it that way. Once development is complete - please apply for Production access for the key through the Developer Dashboard, this removes Rate limits associated with a beta key, so you don't have to worry about high traffic. Lastly, and most importantly - GIPHY has monitors setup for API key abuse and we'll reach out to you if anything happens. We definitely don't want you to worry about it.
https://github.com/Giphy/giphy-js/issues/120
Do you have any other ideas in mind?


Unsupported data type (Boolean) during import initializers

While compile model Tiny YOLOv3 (https://github.com/onnx/models/blob/master/vision/object_detection_segmentation/tiny-yolov3/model/tiny-yolov3-11.onnx), it gives following error:
Failed to import ONNX TensorProto due to unsupported data types.
UNREACHABLE executed at /root/github/onnx-mlir/src/Builder/FrontendDialectHelper.cpp:233!
Aborted

It is because that Loop operator in this model contains a boolean type but it's not handled by onnxTensorProtoToDenseElmAttr

I plan to submit code change:
--- a/src/Builder/FrontendDialectHelper.cpp
+++ b/src/Builder/FrontendDialectHelper.cpp
@@ -228,6 +228,21 @@ mlir::DenseElementsAttr onnxTensorProtoToDenseElmAttr(
         tensorType, llvm::makeArrayRef(arrayAttrInitializer));
     break;
   }
+ case (onnx::TensorProto::BOOL): {
+   // Boolean type MUST be written one byte per tensor element (00000001 for true, 00000000 for false).
+   const auto &arrayAttrInitializer =
+        CreateArrayAttribute<int8_t>(initializer);
+
+   size_t size = arrayAttrInitializer.size();
+   bool arr[size];
+   std::copy(arrayAttrInitializer.begin(), arrayAttrInitializer.end(), arr);
+
+   auto elmType = builder.getIntegerType(1);
+   auto tensorType = mlir::RankedTensorType::get(tensorDims, elmType);
+   denseElmAttr = mlir::DenseElementsAttr::get(
+         tensorType, llvm::makeArrayRef(arr, size));
+   break;
+ }
   default:
     llvm_unreachable(
         "Failed to import ONNX TensorProto due to unsupported data types.");

One problem is that I do not get how to write test code for it. It seems that FileCheck test does not suit.

I plan to submit code change:
--- a/src/Builder/FrontendDialectHelper.cpp
+++ b/src/Builder/FrontendDialectHelper.cpp
@@ -228,6 +228,21 @@ mlir::DenseElementsAttr onnxTensorProtoToDenseElmAttr(
         tensorType, llvm::makeArrayRef(arrayAttrInitializer));
     break;
   }
+ case (onnx::TensorProto::BOOL): {
+   // Boolean type MUST be written one byte per tensor element (00000001 for true, 00000000 for false).
+   const auto &arrayAttrInitializer =
+        CreateArrayAttribute<int8_t>(initializer);
+
+   size_t size = arrayAttrInitializer.size();
+   bool arr[size];
+   std::copy(arrayAttrInitializer.begin(), arrayAttrInitializer.end(), arr);
+
+   auto elmType = builder.getIntegerType(1);
+   auto tensorType = mlir::RankedTensorType::get(tensorDims, elmType);
+   denseElmAttr = mlir::DenseElementsAttr::get(
+         tensorType, llvm::makeArrayRef(arr, size));
+   break;
+ }
   default:
     llvm_unreachable(
         "Failed to import ONNX TensorProto due to unsupported data types.");

One problem is that I do not get how to write test code for it. It seems that FileCheck test does not suit.

The change you suggested seems good to me. Please go ahead.
As for test, we are using onnx backend test for model importing. The test is invoked with "make check-onnx-backend". We do not want to change the onnx backend test. Let's figure out how to add a model into the test later.

The change you suggested seems good to me. Please go ahead.
As for test, we are using onnx backend test for model importing. The test is invoked with "make check-onnx-backend". We do not want to change the onnx backend test. Let's figure out how to add a model into the test later.

@chentong319 Thank. Loop test is added in onnx 1.8.0 (https://github.com/onnx/onnx/blob/v1.8.0/onnx/backend/test/case/node/loop.py), however there is no initializer case. We should be able to add some custom models for testing.

@chentong319 Thank. Loop test is added in onnx 1.8.0 (https://github.com/onnx/onnx/blob/v1.8.0/onnx/backend/test/case/node/loop.py), however there is no initializer case. We should be able to add some custom models for testing.

ONNX operators Where, If and Loop contain cond boolean input. Right now even with fix https://github.com/onnx/onnx-mlir/pull/458, test_loop11 from https://github.com/onnx/onnx/blob/v1.8.0/onnx/backend/test/case/node/loop.py cannot pass.
I will add test for boolean initializer until If/Where is introduced or Loop tests works. Besides, https://github.com/onnx/onnx-mlir/issues/469 discuss test cases for text-based ONNX model.


Align Data Tables to React Component

[ ] Update to align with React components.
[ ] Update table metadata
[ ] Make a re-usable component
[ ]

no change in functionality or display. Regression test and 508 test
Testing
Regression Testing
Test Case: TC178
Tester: @JanellC
508 Testing
Tester: @aprematta

Completed regression testing @tlageman-epa . I found some issues with the data table. Logged Bug: Align Data Table to React Component #1814 to track changes

Bug: Align Data Table to React Component #1814 is resolved. This ticket is ready for 508 testing @aprematta


Wrong bar colors with nord theme in vim, everything fine in neovim

environment

vim: 8.1.2292
vim-airline: latest as Sep 4th 2020 (commit 51f599e2cf45c17759b4bd3931ca1c5c10bfd4f4)
colorscheme: none
OS: macOS Catalina 10.15.6
Have you reproduced with a minimal vimrc: yes, with

call plug#begin('~/.vim/autoload/plugged')
Plug 'vim-airline/vim-airline'
Plug 'vim-airline/vim-airline-themes'
call plug#end()

set termguicolors
let g:airline_theme='base16_nord'

What is your airline configuration: see vimrc above
if you are using terminal:
terminal: Alacritty
$TERM variable: screen-256color
color configuration (:set t_Co?): 256
if you are using Neovim:
does it happen in Vim: in Neovim everything works fine

actual behavior
wrong colors in vim, everything fine in neovim
expected behavior
red airline background in normal mode for the theme 'base16_nord'
screen shot (if possible)

It did not reappear.
Perhaps the problem is that set termguicolors is enabled in neovim, but not in vim. Can you check the configuration again?

Weird!

What happens when I update my Vim to the latest version?

Oh yes! I think my problem is that I'm using macOS's built-in vim.
I'm gonna update vim and try again

The built-in Vim on macOS is built with the termguicolors option disabled.
Therefore, if you want to enable termguicolors, you need to build it yourself.

Thank you much!


#26: Fix a crash where the actionsDelegate was not being set in rootTabBarController.

If I were submitting this for production, I'd remove all comments describing rootTabBarController's memory address. I'm leaving them in so that it's clear which instance was crashing and which instance was wrong.


Fix issue with proceeding zeros

What is the context of this PR?
Fixes issue #263.  Updates the converter, questionnaire manager and widgets to use typed values rather than input values.  Modifies the downstream data test to check the proceeding zeros case.
How to review

Checkout the branch
Run the tests
Go to the dev console and select a survey that allows you to enter integer/currency values
Fill an input box with a load of proceeeding zeros and a valid integer
Cause a validation error elsewhere on the page and submit, causing the page to be redisplayed
Verify that the proceeding zeros for your valid integer answer have been removed
Complete the survey and verify the proceeding zeros are not present

[ ] Do all commits have sensible commit messages?
[ ] Is all new code unit tested?
[ ] Are there integration tests if needed?
[ ] Is there sufficient logging?
[ ] Is there documentation or is the code self-describing?

Who worked on the PR
@weapdiv-david worked on this

Looks good, lets just make the format configurable then it's good to go


cityscapes model

Dear authors,
can you please share the weights of the model trained on the Cityscapes dataset?
Thank you very much in advance.
Best,
Antonin.

Hi @vobecant ,
We uploaded the weights of the model on Cityscapes, please check it out!
Robin

Thanks @rstrudel !

Dear @rstrudel ,
I see that the model is Seg-L-Mask/16. As I recall, in one of your earlier paper versions, you said that you were not able to train larger models than Seg-B†-Mask/16. Can I please ask you how did you manage to train the Large variant? I tried to fit something to V100 but I was not able to train the Large model.
Also, I see in the variant.yml that you don't even use amp.
Thank you very much in advance!

Hi @vobecant,
Sure, as specified in the paper for Cityscapes we train the mask transformer with 1 layer instead of two and it does fit memory on 8 V100 GPUs with 32Go of memory. We indeed added amp in the settings to speed up training. Unfortunately it made training really unstable and prone to NaN values after a while in some cases. Thus we just decided to turn it off and opt for the slower but more reliable full numerical precision.


Missing check for decoding multi-byte sequence to invalid code point

c.f. https://en.wikipedia.org/wiki/UTF-8#Invalid_code_points

I decided to track this as part of #219


Starting a Wiki page for Stan's Google Summer of Code proposals

Hi. I'm on Stan's governing body and currently working to submit a proposal for Stan to participate in Google Summer of Code (GSoC) under the NumFOCUS umbrella.
NumFOCUS expects us to host our proposal as a Wiki page so that they can link to it here: https://github.com/numfocus/gsoc/blob/master/2021/ideas-list.md
I thought I'd start an issue and just check if there is some process for starting such a Wiki page here.

No process for starting a wiki page. Do you have permissions? If not,
someone can get them to you.
On Mon, Jan 18, 2021 at 5:13 PM Arman Oganisian<EMAIL_ADDRESS>wrote:

Hi. I'm on Stan's governing body and currently working to submit a
proposal for Stan to participate in Google Summer of Code (GSoC) under the
NumFOCUS umbrella.
NumFOCUS expects us to host our proposal as a Wiki page so that they can
link to it here:
https://github.com/numfocus/gsoc/blob/master/2021/ideas-list.md
I thought I'd start an issue and just check if there is some process for
starting such a Wiki page here.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/stan-dev/stan/issues/2998, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADH6F6JUWPOFT6NXJQJELDS2SW7XANCNFSM4WH4RPOQ
.

No process for starting a wiki page. Do you have permissions? If not,
someone can get them to you.
On Mon, Jan 18, 2021 at 5:13 PM Arman Oganisian<EMAIL_ADDRESS>wrote:

Hi. I'm on Stan's governing body and currently working to submit a
proposal for Stan to participate in Google Summer of Code (GSoC) under the
NumFOCUS umbrella.
NumFOCUS expects us to host our proposal as a Wiki page so that they can
link to it here:
https://github.com/numfocus/gsoc/blob/master/2021/ideas-list.md
I thought I'd start an issue and just check if there is some process for
starting such a Wiki page here.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/stan-dev/stan/issues/2998, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADH6F6JUWPOFT6NXJQJELDS2SW7XANCNFSM4WH4RPOQ
.

I don't believe I have the necessary permissions, so that would be great!

I don't believe I have the necessary permissions, so that would be great!

If it's too annoying / not allowed then totally fine to have as a wiki page, but this might sit nicer under a projects folder in the design-docs repo. I find that we tend to throw stuff up on the wiki, then it gets stale, people forget where to find it, etc. etc.
But if it's just a one shot thing then I think it's fine

If it's too annoying / not allowed then totally fine to have as a wiki page, but this might sit nicer under a projects folder in the design-docs repo. I find that we tend to throw stuff up on the wiki, then it gets stale, people forget where to find it, etc. etc.
But if it's just a one shot thing then I think it's fine

That should be fine! I doubt NumFOCUS would mind as long as they can link to it. Do I need any special permissions to add an .md file in the designs folder? I read the usual PR procedure, but it probably doesn't apply in this setting since it's not really a design doc?

That should be fine! I doubt NumFOCUS would mind as long as they can link to it. Do I need any special permissions to add an .md file in the designs folder? I read the usual PR procedure, but it probably doesn't apply in this setting since it's not really a design doc?

@stablemarkets, you should have a GitHub notification about having permissions on this repo.

@stablemarkets, you should have a GitHub notification about having permissions on this repo.

Thanks @syclik! I accepted the invite to stan-dev/stan. To do what @SteveBronder suggested do I also need permission for stan-dev/design-docs ?

Thanks @syclik! I accepted the invite to stan-dev/stan. To do what @SteveBronder suggested do I also need permission for stan-dev/design-docs ?

Closing this issue. As I've started working on design-docs as suggested. Thanks so much for the suggestions and help!

Closing this issue. As I've started working on design-docs as suggested. Thanks so much for the suggestions and help!


Keystone wallet registration failure by QR

Describe the bug
Wallet registration on Keystone is failing when scanning via QR

Hi there,
We use GitHub issues as a place to track bugs and other development-related issues.
Please see the link below to our dedicated support line:
Help Center :  Click Here
Ticket ID: WB240
Note: Click on the live chat icon at the bottom corner of the page to start a conversation.

Hi there,
We use GitHub issues as a place to track bugs and other development-related issues.
Please see the link below to our dedicated support line:
Help Center :  Click Here
Ticket ID: WR240
Note: Click on the live chat icon at the bottom corner of the page to start a conversation.


Support CSL

Cf. https://github.com/force11/force11-sciwg/issues/24#issuecomment-339319747, CFF should be expressable in CSL.

I believe the way to "support CSL" is actually to provide importers for the different CSL processing libraries, so that they can take CSL as their input!
citeproc-js looks like a good starting point, as it's used in, e.g., Zotero...

A use case for canonical CFF -> CSL converter I have would be in converting CFF citations to enable citing software in notebooks (currently exploring https://github.com/krassowski/jupyterlab-citation-manager/). The current thinking is that on import of a library (in R), or package (in Python), etc. the kernel (via extension) should provide suggested citation in a hidden output message to the frontend so that the extension can offer a citation to be auto-inserted to the bibliography (if bibliography is already present).
I am using citeproc-js (as was the predecessor cite2c), but due to a bit weird licence situation maybe the best thing would be to create a standalone no-frills TypeScript package providing conversion from CFF to CSL (and back, though I am not interested in this part). Python converter would work for me too, but I do see an added value in the TypeScript system (and it would probably integrate with citeproc-js well after compilation to js).

Thanks for your input on this, @krassowski, I like the idea!
I assume that because Jupyter is Python in the backend and Javascript in the frontend, the CSL support that may come to ruby-cff (https://github.com/citation-file-format/ruby-cff/issues/64#issuecomment-892598886) via citeproc-ruby wouldn't really help you here?

Not exactly relevant to this issue, but I was interested in the reverse, CSL-JSON to CFF, so I made a standalone tool for it: https://github.com/passcod/citeworks Might be helpful to someone

Not exactly relevant to this issue, but I was interested in the reverse, CSL-JSON to CFF, so I made a standalone tool for it: https://github.com/passcod/citeworks Might be helpful to someone

Thanks @passcod, I've added citeworks to the tools table in #440.


Update error messages with newer content

Updated error messages:
wallet-errors.xlsx
including FR translation.

please turn that into a google sheet

@knguyenBC Is the attached spreadsheet complete ie. are there no other errors we'd like to update? I can provide you with the existing errors in Bifold and BC Wallet for you to take a look through if there are more you'd like to change

@bryce-mcmath It is not complete. Can you please provide a list of existing errors and I can rewrite them in plain language.

Reach out to dev team to figure out fixes to error messages


Using own openAI assistants

Is it possible to use your own custom assistants using this package or are you meant to do that tuning via the fineTune function?

Reading more into the documentation, I assume assistants might turn up in the list of models, but the example code throws errors from the factory OpenAiModel.fromJson ( final models = await openAI.listModel(); )

@andywetherell thank you for bringing up the issue. I believe the problem stems from decoding JSON in the factory.

If you want to use a custom model, just input the name of your model, as an example.
final mModel = ChatModelFromValue("your custom model");

Hey @redevrx I did try using the ChatModelFromValue. We put in our assistant's Name and then tried the Id, neither of which worked.
It got thrown that the model doesn't exist, are you aware of any issues with connecting with custom models? I'll read into the docs tomorrow to understand more how it works :)

@andywetherell @redevrx  I have a similar issue, were you able to resolve it? How can I provide my assistant's ID?

@leszekkrol no luck I'm afraid. I don't understand enough to make a well-informed attack at fixing it, but looking at the openAI Reference assistants have their own unique retrieval method so I suspect the package would need to be updated for a separate use case for these.

@leszekkrol I don't think the package has support for it, assistants require different requests to the generic models. I ended up abandoning the package and wrote a service. Copied below if helpful, I know nothing about http or working with Json data as new to coding so this is not the best practice approach, but it does work :)
To call it, you need to first create the thread (on initState makes most sense if generic chat), then you create a message for that thread, then execute the thread, and use listThreadMessage to retrieve the response from your assistant. You'll need to add your API key and assistant ID
My reference was this btw, I was going through turning each step into Dart code basically: https://platform.openai.com/docs/assistants/overview
`Future createThread() async {
try {
final response = await http.post(
Uri.parse('https://api.openai.com/v1/threads'),
headers: {
'Authorization': 'Bearer INSERT-YOUR-API-KEY',
'OpenAI-Beta': 'assistants=v1',
},
);
  if (response.statusCode == 200) {
    var responseJson = jsonDecode(response.body);
    String threadId = responseJson['id'];  // Extracting the thread ID
    return threadId;  // Returning the thread ID
  } else {
    return 'Error: ${response.statusCode}';
  }
} catch (e) {
  return 'Exception: $e';
}

}
Future createThreadMessage(String threadId, String messageContent) async {
try {
final response = await http.post(
Uri.parse('https://api.openai.com/v1/threads/$threadId/messages'),
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer INSERT-YOUR-API-KEY',
'OpenAI-Beta': 'assistants=v1',
},
body: jsonEncode({
'role': 'user',
'content': messageContent,
}),
);
  if (response.statusCode == 200) {
    developer.log('Message sent');
  } else {
    developer.log('Error: ${response.statusCode}');
  }
} catch (e) {
  developer.log('Exception: $e');
}

}
Future executeThreadRun(String threadId) async {
try {
final response = await http.post(
Uri.parse('https://api.openai.com/v1/threads/$threadId/runs'),
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer INSERT-YOUR-API-KEY',
'OpenAI-Beta': 'assistants=v1',
},
body: jsonEncode({
'assistant_id' : 'INSERT-YOUR-ASSISTANT-ID',
}),
);
  if (response.statusCode == 200) {
    developer.log(response.body);
  } else {
    developer.log('Error: ${response.statusCode}');
  }
} catch (e) {
  developer.log('Exception: $e');
}

}
// Checking run status
Future retrieveRun(String threadId, String runId) async {
try {
final response = await http.get(
Uri.parse('https://api.openai.com/v1/threads/$threadId/runs/$runId'),
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer INSERT-YOUR-API-KEY'
},
);
  if (response.statusCode == 200) {
    // return response.body;
  } else {
    // return 'Error: ${response.statusCode}';
  }
} catch (e) {
  // return 'Exception: $e';
}

}
Future listThreadMessages(String threadId) async {
try {
final response = await http.get(
Uri.parse('https://api.openai.com/v1/threads/$threadId/messages'),
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer INSERT-YOUR-API-KEY',
'OpenAI-Beta': 'assistants=v1',
},
);
if (response.statusCode == 200) {
  var data = jsonDecode(response.body)['data'];
  developer.log(messages.toString());
  String latestResponse = "";

  // Iterate in reverse to find the latest assistant message
  for (var message in data.reversed) {
    if (message['role'] == 'assistant') {
      latestResponse = message['content'][0]['text']['value'];
      break;
    }
  }

  developer.log(latestResponse);
  return latestResponse;
} else {
  developer.log('Error: ${response.statusCode}');
  return 'Error: ${response.statusCode}';
}

} catch (e) {
return 'Exception: $e';
}
}`

น่ากลัว, ขอบคุณ

this package yet not support Assistants

Hey @redevrx is there an update to this? It looks like assistants are supported now, but I struggle to get it to work.
I am using this example function that you provided:
openAI.assistant.create(assistant: assistant)
and this to call the request
final request = ChatCompleteText(messages: [
      Map.of({"role": "user", "content": question})
    ], maxToken: 200, model: Gpt4ChatModel());
    response = await openAI.onChatCompletion(request: request);

But the answer is always very generic and doesn't fit my assistant. It seems like the assistant is completely ignored. Any hint would be much appreciated.

Hey @redevrx is there an update to this? It looks like assistants are supported now, but I struggle to get it to work.
I am using this example function that you provided: openAI.assistant.create(assistant: assistant)
and then this to call the request
final request = ChatCompleteText(messages: [
      Map.of({"role": "user", "content": question})
    ], maxToken: 200, model: Gpt4ChatModel());
    response = await openAI.onChatCompletion(request: request);

But the answer is always very generic and doesn't fit my assistant. It seems like the assistant is completely ignored. Any hint would be much appreciated.

Hi @biodegradable000 you can try with this step

Create an Assistant by defining its custom instructions and picking a model. If helpful, add files and enable tools like Code Interpreter, Retrieval, and Function calling.
Create a Thread when a user starts a conversation.
Add Messages to the Thread as the user asks questions.
Run the Assistant on the Thread to generate a response by calling the model and the tools.

Ref

Hi @redevrx , thanks a lot for the instructions. I'm starting to figure things out now. Got my assistant, my thread and my Run all working. I am encountering one (last?) problem though: The "status" that I get back from the Run always stays "queued" and never changes to i.e. "completed". Therefore, I don't know how long to wait until fetching the new messages from the thread. If I do it right after "awaiting" the run result it's too early. I can delay the code for an arbitrary 5 seconds or so before fetching the thread messages, but that seems dumb. How do I get notified when the latest answer has arrived if not via the "status" property of the run?
Thanks a million, by the way for this useful package! :)

@biodegradable000 You Can Look this docs https://platform.openai.com/docs/assistants/how-it-works/runs-and-run-steps


APIView emitter crashing on "case 90"

See https://dev.azure.com/azure-sdk/internal/_build/results?buildId=3445077&view=logs&j=e37a1bb9-a190-5269-3a0e-37469dfbe682&t=09cb0672-20c5-5dce-4552-dad3f3e96fd3&l=180
The APIView emitter is failing with a weird error about "case 90".


Create R code for monthly ES rules chart

@pateldevenr Do you have time to create the R code for plotting the new monthly economically significant rules chart? The current chart was created using Excel: https://github.com/regulatorystudies/Reg-Stats/tree/main/data/monthly_es_rules. It would be great to have R code for this one as well. Thanks!

I can start working on this!

We only need a chart for the Biden administration for now, like the one created with Excel in the folder. Thanks @pateldevenr @henhirsch !

#61 finished with PR


Chinese metalanguage for creating a GB doc

One requirement for using this in GB is that the metalanguage is in Chinese.
e.g.,
draft
vs
稿

Makes me thing whether Selagraph is a better choice than Asciidoc for this...

Inasmuch as Selagraph does not exist yet, no.
Since you're using asciidoctor-iso to create Chinese documents, the metalanguage issue has to be confronted in asciidoctor-iso and, more importantly, isodoc. (In fact the metalanguage can stay English in asciidoctor-iso: it's the output from isodoc that matters.) https://github.com/riboseinc/isodoc/issues/47

Now done in https://github.com/riboseinc/isodoc/issues/47


grunt plugin:add uri error

tongshinjiedeiMac:yo_ionic tongshinjie$ grunt plugin:add:https://github.com/driftyco/ionic-plugins-keyboard.git
Running "plugin:add:https://github.com/driftyco/ionic-plugins-keyboard.git" (plugin) task
Warning: undefined is not a function Use --force to continue.

I ran into this as well. I suspect that the reason is that the : in the URI confuses grunt because it thinks that it is a command separator, i.e. plugin:add:https:....
I don't really know enough about grunt to figure out how to fix it, and this is a pretty serious bug, so I'm thinking of switching to pure ionic instead.


Logger default arguments not usable in non-Kotlin and non-Java code

When using a Logger class from Swift (and likely other non-Kotlin and non-Java languages, where Kotlin default arguments are not supported and @JvmOverloads doesn't apply), it's not possible to call any of the Logger functions that take default arguments without explicitly providing the tag and throwable arguments. This used to be possible before #328 introduced these default arguments. It would be preferable to explicitly provide these function overloads, rather than relying on Kotlin's default arguments, which currently lack multiplatform support.

That is what https://github.com/touchlab/Kermit/tree/main/kermit-simple is for. Export that to non-kotlin clients.
Also, without spoiling anything, keep an eye on our announcements for the next couple weeks.

Export that to non-kotlin clients.

How should this be done? I currently have:
val commonMain by getting {
    dependencies {
        api("co.touchlab:kermit:2.0.0-RC5")
    }
}

I tried adding:
val iosMain by getting {
    dependencies {
        api("co.touchlab:kermit-simple:2.0.0-RC5")
    }
}

But the type is still KermitLogger : Kermit_coreBaseLogger in my exported framework.

keep an eye on our announcements for the next couple weeks.

Will do!

Looks like I'd need to make it an implementation dependency in commonMain. But if I need the Logger part of the public API for Kotlin platforms, then do I need to add it explicitly as api in each of those targets?
val androidMain by getting {
    dependencies {
        api("co.touchlab:kermit:2.0.0-RC5")
    }
}

Ah, looks like it's just the explicit export that's necessary, which adds the overloads as extension functions:
cocoapods {
    framework {
        export("co.touchlab:kermit-simple:2.0.0-RC5")
    }
}

It can still be an api dependency in commonMain. 👍

This is working exporting kermit-simple.


cant be injected

some app cant be injected how fix this and can these apps work with side-car

i use linkerd

Hi @Nello-Angelo, could you please elaborate? This issue doesn't have a lot of information and it makes it rather hard to understand what the issue you have observed actually is. Thank you.


how do you take care of the presence of 'and' in the output in the evaluation

Sometimes the output also can emit "and" for say the multi-value case. Should we not account for that in the output and evaluate the string match accordingly or you never faced such an issue?
3728882, 7210606, 7120868, and 8606962
was my output and my outputs are
['8606962', '7120868', '3728882', '7210606']

That is fine because our metric checks whether the answers exist in the prediction string.


Debug.toolBarLocation :docked  doesn't works well

Issue Type: Bug
after updating the vs code I changed my code to
"debug.toolBarLocation": "docked"
This doesn't work all the time, the debugging panel disappears time to time.
VS Code version: Code 1.24.0 (6a6e02cef0f2122ee1469765b704faf5d0e0d859, 2018-06-06T17:35:40.560Z)
OS version: Windows_NT x64 6.3.9600

System Info

Item
Value

CPUs
Intel(R) Core(TM) i3-2120 CPU @ 3.30GHz (4 x 3293)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwarerasterization: unavailable_softwarevideo_decode: enabledvideo_encode: enabledvpx_decode: unavailable_softwarewebgl: enabledwebgl2: enabled

Memory (System)
7.94GB (1.45GB free)

Process Argv
C:\Program Files\Microsoft VS Code\Code.exe

Screen Reader
no

VM
0%

Extensions (6)

Extension
Author (truncated)
Version

vscode-css-formatter
aes
1.0.1

es7-react-js-snippets
dsz
1.8.2

vscode-babel-coloring
dza
0.0.4

debugger-for-chrome
msj
4.6.0

js-jsx-snippets
sky
0.0.9

vscode-react-native
vsm
0.6.11

(1 theme extensions excluded)

The debugging panel should only appear while you are debugging, that is designed behavior.
If this is not the case then please provide a video showing the issue.
Or exact steps to repro. Thanks

as you can see it doesn't appears event if I am on debugging mode.
For more info:
I have this in my console

Error: Set breakpoints request timed out
    at Timeout.setTimeout [as _onTimeout] (c:\Users\.vscode\extensions\msjsdiag.debugger-for-chrome-4.6.0\node_modules\vscode-chrome-debug-core\out\src\utils.js:71:24)
    at ontimeout (timers.js:386:14)
    at tryOnTimeout (timers.js:250:5)
    at Timer.listOnTimeout (timers.js:214:5)

Oh, i see what u mean, its only on the debug tab, not the behavior that i was expecting with docked :(, going back to "floating", would have loved it on the explore window aswell. Please make it a feature?

@isidorn  I see what you mean, I think this should be visible for explorer too.

Just put floating, and drag it to the viewlet area, then you will see it for every viewlet, even the explorer

I know that, but how will you justify docked feature? it should be visible to any area even for the explorer.

Why would I want to only have access to the debug toolbar when on the debug panel.  It makes no sense that I would have to switch to the explorer panel to open a file to set break points then go back to the debug panel step through code via the toolbar.  Why can't it just be docked under the menu like every other windows applications works.  I have hated the floating toolbar since I started using VSCode.

@nhdoublek Exactly, Its been quite a few days I want to explain the same to them, But looks like they are not listening.


Change cursor type for clickable elements

Fixes #1550
Background
Change List

Made the cursor type to pointer when the user is hovering over the heatmap.

Checklist

[ ] Ensure PR works with all demos on the dev.vitessce.io homepage
[ ] Open (draft) PR's into vitessce-python and vitessce-r if this is a release PR
[ ] Documentation added or updated

Can we only show the special cursor when clicking will result in updated plots? For example, by making it dependent on cellHighlight/geneHighlight as computed by onHover


Enable Template code

Checklist

[X ] I checked for similar existing requests (both open and closed) before posting.
[ X] My request is generic, other users may benefit from it too.

Proposal
Hi,
Right now I have an input_select to select which user the telegram notifications are sent to:
notify.telegram_{{ states('input_select.telegram_user_alarm') }}
I have tried to integrate this possibility in ALARMO, but it does not allow me to save the code, neither in UI nor in yaml

I wish I could, but I have no idea how to implement this.

If you don't know that you are the one with knowledge... 🤣🤣🤣
Well, I will continue using scripts to send the messages
THANKS


Documentation for configuration keys

Could you please add documentation for the configuration keys that you define? This would provide a better user experience in the IDE

The Javadoc for field values within configuration classes will be used to populate the description attribute.

Check ServerProperties for an example.

Done