Migration with serial data type fails

Bug report
Describe the bug
Supabase CLI created migration fails if table uses serial data type.
To Reproduce

Open the SQL editor and run:

create table if not exists public.my_table (
  id serial primary key,
  creator uuid references auth.users(id) on delete set null default auth.uid(),
  created_at timestamp with time zone not null default now(),
  content text not null
);

Run supabase db commit test_serial
Run supabase db reset
Get the error

Error: Error resetting database: ERROR:  relation "my_table_id_seq" does not exist
LINE 8:     id integer NOT NULL DEFAULT nextval('my_table_id_seq'::r...

The resulting migration is as follows:
CREATE TABLE IF NOT EXISTS public.my_table
(
    id integer NOT NULL DEFAULT nextval('my_table_id_seq'::regclass),
    creator uuid DEFAULT auth.uid(),
    created_at timestamp with time zone NOT NULL DEFAULT now(),
    content text COLLATE pg_catalog."default" NOT NULL,
    CONSTRAINT my_table_pkey PRIMARY KEY (id),
    CONSTRAINT my_table_creator_fkey FOREIGN KEY (creator)
        REFERENCES auth.users (id) MATCH SIMPLE
        ON UPDATE NO ACTION
        ON DELETE SET NULL
)

TABLESPACE pg_default;

ALTER TABLE IF EXISTS public.my_table
    OWNER to postgres;

GRANT ALL ON TABLE public.my_table TO anon;

GRANT ALL ON TABLE public.my_table TO authenticated;

GRANT ALL ON TABLE public.my_table TO postgres;

GRANT ALL ON TABLE public.my_table TO service_role;

Expected behavior
The migration would work.

This modification is based on Postgres documentation:

The data types smallserial, serial and bigserial are not true types, but merely a notational convenience for creating unique identifier columns (similar to the AUTO_INCREMENT property supported by some other databases). In the current implementation, specifying:
CREATE TABLE tablename (
   colname SERIAL
);

is equivalent to specifying:
CREATE SEQUENCE tablename_colname_seq AS integer;
CREATE TABLE tablename (
   colname integer NOT NULL DEFAULT nextval('tablename_colname_seq')
);
ALTER SEQUENCE tablename_colname_seq OWNED BY tablename.colname;

I also see there's a difference in the migration create table as it uses
...
id integer NOT NULL DEFAULT nextval('my_table_id_seq'::regclass),
...

whereas Postgres documentation uses
...
colname integer NOT NULL DEFAULT nextval('tablename_colname_seq')
...

but I am not very skilled at Postgres.

Thanks @teemu-kemppainen - this is a limitation of the schema diff tool, we can't fix it on the CLI side. Unfortunately the only way to handle this is to manually review each autogenerated diff.
For this specific issue though, you might want to consider using identity columns instead, which should work without error.


improve the settings screen

change description
add default description for Attachments

see #673

What do you think @suramyatomar and @docpop ???

This seems good to me. I like the changes.

Thanks @docpop


List selecting/activating selects element below it

When having a node as shown in the first screenshot, selecting an item in the list will also activate the field below it, i.e. selecting an item in the upper bool input will activate the lower bool input (second screenshot, look closely, the "T" of "True" is barely visible). Likewise, selecting the lowest string input will activate the bool input above it, typing is possible.

There are still some issues...
After repeated changes of all values, suddenly I am not able to change any of the values. Also, trying to drag the node itself doesn't work.


Support OAS 3.1 ?

Does swagger-parser support and validate OAS 3.1 files?
http://spec.openapis.org/oas/v3.1.0

Can adding type null be one of the first features?

Will the same parser jar support both OAS3.0.x and OAS3.1.x documents?

@chrisdudley not yet. It's in the plans, but there's no ETA yet.

Do you have any ETA when OpenAPI 3.1.0 will be supported or the work will kickoff?

Probably it's time to repeat question two months later:

Do you have any update about when OpenAPI 3.1.0 will be supported or the work will kickoff?

Thanks!

https://github.com/swagger-api/swagger-parser/commits/oas3.1

@frantuma Is there any way to help? I'm happy to throw you a €50 bounty if that helps.

Hey @Mark-H, many thanks for your kind offer!
We have 3.1 in our short term roadmap, we'll add an explanation in a few days about what we're doing and how we are adding OAS 3.1 support to swagger-core and swagger-parser, sharing some design decisions, motivations, tasks involved, needed work and ongoing implementation. I'll link that in this and other tickets related to OAS 3.1 support, any thought/comment/discussion/coding and generally any help are highly welcome. Stay tuned and thanks

Any chance that this bug could be fixed as part of the 3.1 roadmap?
https://github.com/swagger-api/swagger-parser/issues/1603
Composed schemas are important and when the parser processes these AnyType schemas it incorrectly sets their types as type object and array. This makes composition not work these use cases.

any updates on OAS3.1?

@gunsluo on its way, should be very short term for parser support including dereferencing. Swagger Core support for representation/serialization/deserialization has been implemented, along with OAS 3.0 conversion into 3.1 as a (temporary) way to get a OAS 3.1 spec out of code first resolving by Swagger Core. No ETA but quite short term also (some 3-4 weeks) we are going for OAS 3.1 full support in Swagger Core code first resolving in terms of annotations and related logic

#1730 implements OAS 3.1 Support in terms of parsing/validation and de-referencing / resolving.
Updated documentation about usage, features, limitations and remaining tasks will follow shortly (Swagger Core and Swagger Parser)

@frantuma should this be closed?

It looks like as of v2.1.0 this can be closed https://github.com/swagger-api/swagger-parser/releases/tag/v2.1.0


Shenyu Gateway forwarding URL parameter urldecode problem

Question
shenyu 2.4.3
Get request
url is like queryTaskPage?examState=0&orders%5B0%5D.asc=true&size=9&current=1&examName=&_t=1658991926619
Gateway forwarding URL parameter urldecode  change to
queryTaskPage?examState=0&orders[0].asc=true&size=9&current=1&examName=&_t=1658991926619
tomcat webservice response 400
but i find use nginx forwarding URL is also the same
queryTaskPage?examState=0&orders%5B0%5D.asc=true&size=9&current=1&examName=&_t=1658991926619
response is success。
You can use the GET request receive array argument to reproduce the problem

I will follow up on this issue.

Has this problem been solved?


SipPhone.register fails with ParseException when server responds with TO header without tag part

Exception is
failed to register Exception while cloning request: java.text.ParseException: null or empty token
java.text.ParseException: null or empty token
        at gov.nist.javax.sip.parser.Parser.checkToken(Parser.java:115)
        at gov.nist.javax.sip.header.To.setTag(To.java:175)
        at org.cafesip.sipunit.SipPhone.processAuthChallenge(SipPhone.java:701)
        at org.cafesip.sipunit.SipPhone.sendRegistrationMessage(SipPhone.java:563)
        at org.cafesip.sipunit.SipPhone.register(SipPhone.java:353)
        at org.cafesip.sipunit.SipPhone.register(SipPhone.java:231)

Response
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP X.X.X.X:5090;branch=z9hG4bK-373233-244216aa01ac5c3bbc3aadcc5c91e47e;received=X.X.X.X
From: <sip:1001@X.X.X.X.>;tag=482602994
To<EMAIL_ADDRESS>Call-ID<EMAIL_ADDRESS>CSeq: 1 REGISTER
WWW-Authenticate: Digest realm="X.X.X.X.", nonce="a2a9903d542bedb1618d948f477bb2be.1436996491", stale=FALSE, algorithm=MD5
Server: V4 0.1.1-48
Allow: ACK, INVITE, BYE, CANCEL, REGISTER, REFER, OPTIONS, INFO
Content-Length: 0

I'm not sure is tag is mandatory for To in this response, but i think it won't be bad to check for tag existence before trying to set it in SipPhone:701

I do think the To Tag is mandatory as per RFC 3261 for any non provisional response.
I think this issue should be fixed now as Issue #2 was fixed yesterday which was setting the ToTag on the challenge request. Now that this code is gone, this exception shouldn't pop up anymore. Can you confirm against 2.0.1 https://oss.sonatype.org/content/repositories/releases/org/mobicents/sipunit/sipunit/2.0.1/ ?
Thanks


Fix docs examples where braces are removed

Closes
dprint is affecting our code in such a way that sometimes when highlighting we end up removing a starting curly brace
see https://react-spectrum.adobe.com/react-aria/useDroppableCollection.html#reordering search for "...mergeProps(optionProps, dragProps, dropProps, focusProps)" to find the highlighted line in question
see this link to see what dprint is doing
https://dprint.dev/playground/#code/GYVwdgxgLglg9mABAJQKZwE4BNUYIYBGANqgDIwDOUAQnAB4AUADhnExQJSIDeAUIogyooIDEgb8BiADwA+SVJlEYCxYgD0mgLSICqAOYwkACxj7jy81ERbN61Yu4A6FwFtc+1AAVW7Bm1gEHzYKABpELHx9YPZwyLYYsMRgOAgQCkSOAF8HKTsdVDAsRFNzS2NrW01cgSFgAF5uOqz5etzpdWV5RQ7uxA4Abl4soA/language/typescript
this might be a dprint bug or might be fixable with one of its options, but I'm not super familiar with it, so starting here.
✅ Pull Request Checklist:

[ ] Included link to corresponding React Spectrum GitHub Issue.
[ ] Added/updated unit tests and storybook for this change (for new code or code which already has tests).
[ ] Filled out test instructions.
[ ] Updated documentation (if it already exists for this component).
[ ] Looked at the Accessibility Practices for this feature - Aria Practices

📝 Test Instructions:

🧢 Your Project:

closing, there seem to be some other workarounds for this


APQ8016 EDL

Attempting to use qdl 3c0405c03d427d7adfc70ae25abdcfdd4107bec8 with APQ8016 - DB410c.
Device enumeration:
Bus 007 Device 027: ID 05c6:9008 Qualcomm, Inc. Gobi Wireless Modem (QDL mode)
Using dragonboard-410c-bootloader-emmc-linux-159.zip I issue:
sudo /b/qdl/qdl prog_emmc_firehose_8916.mbn rawprogram0.xml patch0.xml
It just returns fairly quick, and says nothing.
strace log
log tail
ioctl(4, USBDEVFS_IOCTL, 0x7ffc02ac36f0) = -1 ENODATA (No data available)
ioctl(4, USBDEVFS_CLAIMINTERFACE, 0x7ffc02ac36cc) = 0
openat(AT_FDCWD, "prog_emmc_firehose_8916.mbn", O_RDONLY) = 3
ioctl(4, USBDEVFS_BULK, 0x7ffc02ac25d0) = -1 ETIMEDOUT (Connection timed out)

Does prog_emmc_firehose_8916.mbn require an update to work with master?
I'm running this on Fedora 33.  I'll try it on Ubuntu 18 as well.

The first qdl_read in sahara_run is timing out.  It's not get a response from device while in EDL mode, and timing out without error or warning.

Same issue on Fedora 33 and Ubuntu 18.  I stopped ModemManager on each.  What am I missing? @ndechesne @lumag

Well I didn't cycle the USB after turning off ModemManager, so SoC was confused.  After power cycling SoC it worked as expected on Ubuntu 18.

also confirmed to work on Fedora 33.  Test were all run on master as of today.

Getting "23: Connection timed out"


when loading an HF space that is asleep, this blocks the ENTIRE foreground while it's loading

(we need to load the model in a background thread and display progress).

duplicate of #47


[Storage] Support for Development Connection String - storage-blob

This PR adds the support for Development connection string and some tests for the emulator(local).

Development Connection String

DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://<IP_ADDRESS>:10000/devstoreaccount1;

Shorthand notation is also supported

UseDevelopmentStorage=true or
UseDevelopmentStorage=true;DevelopmentStorageProxyUri=http://myProxyUri

/azp run js - storage-blob - tests

Answered here - https://github.com/Azure/azure-sdk-for-js/pull/5004#issuecomment-535169301


async calls with child processes

I'm trying to use node-ffi to asynchronously call a function in a non-threadsafe shared library.
Is there any way for the node-ffi async method to spawn a new process (or manage a process pool) instead of a thread pool so I can use the non-threadsafe library concurrently? Maybe via an existing libuv environment variable or an enhancement?

I understand I can use child_process to manually manage a process pool, but is there a nicer way?

Not really, not built into node-ffi at least. I'd recommend using child_process.spawn() to create a worker pool, or there's probably better generic ones on npm as well. Seems out of scope for this module though, so closing.


Incorrect terminology

This quote, "For a device to function as a gateway, it needs to be able to securely connect to its downstream devices." causes a lot of confusion for developers new to this environment (your target audience).  When you are discussing authentication and security and certifications, it's extremely important to be clear about who is connecting to whom, and the difference between client and server.  The edge device (gateway) does NOT need to connect to a downstream device.  It's the other way round: the device needs to connect to the gateway.  I recommend re-wording the above quote for clarity.

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

ID: 6f6b8e5f-7de7-b40b-ad37-dc9b5c8f7d63
Version Independent ID: 10a9b17d-cbf4-ec07-ae39-953d3d0fd411
Content: Create transparent gateway device - Azure IoT Edge
Content Source: articles/iot-edge/how-to-create-transparent-gateway.md
Service: iot-edge
GitHub Login: @kgremban
Microsoft Alias: kgremban

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

@rgamage I have assigned the issue to the content author @kgremban  for further review and update the doc as appropriate.

@rgamage Thank you for your detailed feedback on the documentation. I'm working my way through your separate issues, and taking this as an opportunity to retry all the steps in this set of articles myself. So I'll be responding to all your issues over the next day or so as I get to them in order.
You make a good point about that first statement being confusing. How about this as a rewrite for the three high-level steps for setting up a gateway scenario:

Configure the gateway device as a server so that downstream devices can connect to it securely. Set up the gateway to receive messages from downstream devices and route them to the proper destination.
Create a device identity for the downstream device so that it can authenticate with IoT Hub. Configure the downstream device to send messages through the gateway device.
Connect the downstream device to the gateway device and start sending messages.

The new wording looks a lot better, thanks!
On Wed, May 27, 2020 at 3:58 PM Kelly Gremban<EMAIL_ADDRESS>wrote:

@rgamage https://github.com/rgamage Thank you for your detailed
feedback on the documentation. I'm working my way through your separate
issues, and taking this as an opportunity to retry all the steps in this
set of articles myself. So I'll be responding to all your issues over the
next day or so as I get to them in order.
You make a good point about that first statement being confusing. How
about this as a rewrite for the three high-level steps for setting up a
gateway scenario:

Configure the gateway device as a server so that downstream devices
can connect to it securely. Set up the gateway to receive messages from
downstream devices and route them to the proper destination.
Create a device identity for the downstream device so that it can
authenticate with IoT Hub. Configure the downstream device to send messages
through the gateway device.
Connect the downstream device to the gateway device and start
sending messages.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/55154#issuecomment-634987305,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEAGYEE2BYK54DHXKBYM6L3RTWLJZANCNFSM4NFAEPZQ
.

Since we agreed on this new wording, I'll have GitHub automatically close this issue once the pull request with the changes gets merged. Thanks again for your help!


CoinJoin Contract Implementation

Hello,
I want to learn, how can I implement CoinJoin contract with NBitcoin?
https://bitcoin.org/en/developer-guide#coinjoin
Thanks.

I've not implemented Coinjoin, but you can do it with NBitcoin.
Please look https://www.gitbook.com/book/programmingblockchain/programmingblockchain/details for introduction.


Unexpected token when parsing type: [u16 ; 9]

thread '' panicked at 'failed to parse a rust type: Unexpected token when parsing type: [u16 ; 9]. This is an internal error, please ping a typeshare developer to resolve this problem.', /Users/takumi/.cargo/registry/src/rsproxy.cn-8f6827c7555bfaf8/typeshare-cli-1.0.1/src/main.rs:234:17
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace

Hello! Typeshare currently does not support fixed size arrays. For now, use Vec<u16> instead. The returned panic message is misleading though - I'll create a new issue to improve this.

@CerulanLumina could it map this to number[]

Closed by #89


Resolve path aliases for service worker imports

Describe the problem
I have some code that I'd like to share between some SvelteKit endpoints and my service worker.
When I try to import these modules in my service worker using a custom path alias (e.g. import addOne from '$utils/addOne';), then build the service worker with vite build, I get the following error --
[vite]: Rollup failed to resolve import "$common/lib/UserSubscriptionManager" from "src/service-worker.ts".
This is most likely unintended because it can break your application at runtime.
If you do want to externalize this module explicitly add it to
`build.rollupOptions.external`

I've tried doing as this error asked, but no luck!
I've created this repo as a minimal reproduction: https://github.com/egargan/sveltekit-service-worker-alias-issue.
Clone it, install deps, then run npx vite build to see the error mentioned above.
Interestingly, the default $lib alias works!
Describe the proposed solution
I'd like custom aliases defined in svelte.config.js to be respected when building a service worker. vite build should output a service worker with the alias-imported modules bundled into it.
Alternatives considered
No response
Importance
would make my life easier
Additional Information
No response

I've managed a fix in this branch, probably needs a bit of work, e.g. I imagine the $app and __GENERATED__ aliases aren't relevant to the service worker, but am I on the right lines? Happy to continue with this with some guidance.
https://github.com/egargan/kit/commit/2a5049e05734a83e689a3fff8ff3d69242889953

This looks about right, my suggestion is to split up the alias generation utility in two, where one just cares about $lib and the user-defined aliases, and the other adds $app etc on top.


Fix logdet issues by instead implementing logabsdet

The issue
Previously, we had cases where logdet fails even though the PSDMatrix of interest has a well-defined log-determinant:
using PSDMatrices, LinearAlgebra
M = PSDMatrix(-I(3))
logdet(Matrix(M)) # correctly returns 0.0
logdet(M) # fails

The fix
LinearAlgebra.logdet is actually implemented via logabsdet:
https://github.com/JuliaLang/julia/blob/master/stdlib/LinearAlgebra/src/generic.jl#L1609-L1612.
So, let's overload logabsdet instead! The formula here: Multiply the log-abs-det with 2, but square the sign. Now everything works!

Codecov Report

Merging #29 (2c4c79b) into main (067e737) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##              main       #29   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            1         1
  Lines           48        49    +1
=========================================
+ Hits            48        49    +1

Impacted Files
Coverage Δ

src/PSDMatrices.jl
100.00% <100.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 067e737...2c4c79b. Read the comment docs.


analyzer allows invalid raw strings

$ dart ./tests/language/bad_raw_string_negative_test.dart
'./tests/language/bad_raw_string_negative_test.dart': error: line 7 pos 11: unterminated string literal
  print(r'
          ^
$ dartanalyzer ./tests/language/bad_raw_string_negative_test.dart
Analyzing [./tests/language/bad_raw_string_negative_test.dart]...
No issues found

In IntelliJ/WebStorm it does show up as a parse error. FWIW.

this bug was fixed


Only Icon-512 is produced when the plugin is ran.

When I run the plug in only one size is generated. Using Sketch version 3.4.2.

Hi, latest version of plugin (2.2.2) is tested with the latest version of Sketch (39.1).
You should manually try out older plugin versions for Sketch 3.4.2, I'm not sure which one is right for you.


Remove CQLStatement::get_table_name(CassandraStatement)

The merge of #598  will bring in the CQLStatement::get_table_name function.  It should be replaced with CassandraStatement.get_table_name function once that is implemented in the CQL3 parser.  That change is tracked as https://github.com/shotover/rust-cql3-parser/issues/20

This is already resolved within https://github.com/shotover/shotover-proxy/pull/661
And since this occured entirely within forks we can close this issue already


[Suggestion] Add a command "Select Function" when executing "Start Streaming Logs/Stop Streaming Logs/View Properties" commands

OS: All
Build Version: 20201015.3
Repro Steps:

F1 -> Type and select "Azure Functions: Execute Function Now..." -> Select a subscription -> Select a Function App -> Check the result.
F1 -> Type and select "Start Streaming Logs" -> Select a Function App -> Check the result.
Right click one function and check its context menu.

Actual:
There is no command "Select Function" when executing "Start Streaming Logs" command.
Suggestion:
Add a command "Select Function" when executing "Start Streaming Logs/Stop Streaming Logs/View Properties" commands.

More Info:
There is a command "Select Function" when executing commands as below:

The problem is that the commands you mentioned work for functions and function apps. We could add support, but it could clutter up the command palette and/or confuse users. We will close this as "wont-fix" unless we get more user feedback asking for this


Fineract-265:addressModuleNullPointerFix

This is a fix for a bug in address module. The address module throws a null pointer exception when the user creates a new client and puts in the address without activating it ( keeping the enable check box as unchecked). Now the code assumes that the address is not active by default and only checks for value if the parameter has one.

@nikpawar89 Changes looks OK.


bug: Warning in topic tests - Event Loop is closed

Bug Report
YDB GO Python version: 3.10

Environment: v3

Current behavior: Test passed with following warnings:
.tox/py/lib/python3.10/site-packages/_pytest/config/__init__.py:1233
  /home/waleriya/ydb/ydb-python-sdk/.tox/py/lib/python3.10/site-packages/_pytest/config/__init__.py:1233: PytestConfigWarning: Unknown config option: asyncio_mode

    self._warn_or_fail_if_strict(f"Unknown config option: {key}\n")

ydb/_topic_writer/topic_writer_asyncio_test.py::TestWriterAsyncIOReconnector::test_encode_data_inplace[2-datas1]
  /home/waleriya/ydb/ydb-python-sdk/.tox/py/lib/python3.10/site-packages/_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning: Exception ignored in: <coroutine object WriterAsyncIOReconnector._read_loop at 0x7fae28d0f300>

  Traceback (most recent call last):
    File "/usr/lib/python3.10/asyncio/queues.py", line 159, in get
      await getter
  GeneratorExit

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/home/waleriya/ydb/ydb-python-sdk/ydb/_topic_writer/topic_writer_asyncio.py", line 520, in _read_loop
      resp = await writer.receive()
    File "/home/waleriya/ydb/ydb-python-sdk/ydb/_topic_writer/topic_writer_asyncio_test.py", line 184, in receive
      item = await self.from_server.get()
    File "/usr/lib/python3.10/asyncio/queues.py", line 161, in get
      getter.cancel()  # Just in case getter is not done yet.
    File "/usr/lib/python3.10/asyncio/base_events.py", line 750, in call_soon
      self._check_closed()
    File "/usr/lib/python3.10/asyncio/base_events.py", line 515, in _check_closed
      raise RuntimeError('Event loop is closed')
  RuntimeError: Event loop is closed

    warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))

-- Docs: https://docs.pytest.org/en/stable/warnings.html

Expected behavior: Tests passed without warnings

Steps to reproduce: run local tests, for example: $ tox -e py -- ydb/_topic_writer/

Tests output:
Task was destroyed but it is pending!
task: <Task pending name='encode_loop' coro=<WriterAsyncIOReconnector._encode_loop() running at /home/waleriya/ydb/ydb-python-sdk/ydb/_topic_writer/topic_writer_asyncio.py:398> wait_for=<Future pending cb=[Task.task_wakeup()]>>
Task was destroyed but it is pending!
task: <Task pending name='connection_loop' coro=<WriterAsyncIOReconnector._connection_loop() running at /home/waleriya/ydb/ydb-python-sdk/ydb/_topic_writer/topic_writer_asyncio.py:370> wait_for=<Future pending cb=[Task.task_wakeup()]>>
Exception ignored in: <coroutine object WriterAsyncIOReconnector._encode_loop at 0x7f7993be7a00>
Traceback (most recent call last):
  File "/home/waleriya/ydb/ydb-python-sdk/ydb/_topic_writer/topic_writer_asyncio.py", line 398, in _encode_loop
    messages = await self._messages_for_encode.get()
  File "/usr/lib/python3.10/asyncio/queues.py", line 161, in get
    getter.cancel()  # Just in case getter is not done yet.
  File "/usr/lib/python3.10/asyncio/base_events.py", line 750, in call_soon
    self._check_closed()
  File "/usr/lib/python3.10/asyncio/base_events.py", line 515, in _check_closed
    raise RuntimeError('Event loop is closed')
RuntimeError: Event loop is closed
Exception ignored in: <coroutine object WriterAsyncIOReconnector._connection_loop at 0x7f7993be7a70>
Traceback (most recent call last):
  File "/home/waleriya/ydb/ydb-python-sdk/ydb/_topic_writer/topic_writer_asyncio.py", line 393, in _connection_loop
    task.cancel()
  File "/usr/lib/python3.10/asyncio/base_events.py", line 750, in call_soon
    self._check_closed()
  File "/usr/lib/python3.10/asyncio/base_events.py", line 515, in _check_closed
    raise RuntimeError('Event loop is closed')
RuntimeError: Event loop is closed
Task was destroyed but it is pending!
task: <Task pending name='writer send loop' coro=<WriterAsyncIOReconnector._send_loop() running at /home/waleriya/ydb/ydb-python-sdk/ydb/_topic_writer/topic_writer_asyncio.py:540> wait_for=<Future cancelled>>
Task was destroyed but it is pending!
task: <Task pending name='writer receive loop' coro=<WriterAsyncIOReconnector._read_loop() running at /home/waleriya/ydb/ydb-python-sdk/ydb/_topic_writer/topic_writer_asyncio.py:513> wait_for=<Future pending cb=[Task.task_wakeup()]>>
Exception ignored in: <coroutine object WriterAsyncIOReconnector._read_loop at 0x7f7993be7d80>
Traceback (most recent call last):
  File "/home/waleriya/ydb/ydb-python-sdk/ydb/_topic_writer/topic_writer_asyncio.py", line 513, in _read_loop
    resp = await writer.receive()
  File "/home/waleriya/ydb/ydb-python-sdk/ydb/_topic_writer/topic_writer_asyncio_test.py", line 227, in receive
    item = await self.from_server.get()
  File "/usr/lib/python3.10/asyncio/queues.py", line 161, in get
    getter.cancel()  # Just in case getter is not done yet.
  File "/usr/lib/python3.10/asyncio/base_events.py", line 750, in call_soon
    self._check_closed()
  File "/usr/lib/python3.10/asyncio/base_events.py", line 515, in _check_closed
    raise RuntimeError('Event loop is closed')
RuntimeError: Event loop is closed

And in _topic_reader tests same issues


How to disable photo scale?

Hello!
Thank you for your library.
I want get only original photo. But always I get scale photo. How to fix it.
In library I remove this line (below) and work for me. But how fix it without change library code?
photo = [self scaleImage:photo toSize:CGSizeMake(tzImagePickerVc.photoWidth, (int)(tzImagePickerVc.photoWidth * photo.size.height / photo.size.width))];

Hello, in order to avoid memory surge, the photo in photos array always is thumbnail.
If user selects the original photo, isSelectOriginalPhoto will be YES, then you need to get the original image by the asset, through the method of the TZImageManager class:

/// Get original Image

(void)getOriginalPhotoWithAsset:(id)asset completion:(void (^)(UIImage *photo,NSDictionary *info))completion;

completion may be called 1 or more times.
if info[PHImageResultIsDegradedKey] is YES, the photo is thumbnail,  otherwise the photo is original photo


[AutoPR securityinsights/resource-manager] fix ResourceWithEtag not to contain inheritance to fix the multiple i…

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/7301

no action until Azure/azure-rest-api-specs#7301 is merged

This PR has been merged into https://github.com/Azure/azure-sdk-for-python/pull/7275


globalProperties  and instance properties not available to the runtime compiler when calling compile()

Version
3.2.23
Reproduction link
stackblitz.com
Steps to reproduce
Call the compile function with a template containing references to global properties.
For example:
compile('
This is an example
')

where $divclass has been defined as a globalProperty by a call to app.config.globalProperties.$divclass='myclass'
What is expected?
The reference is found
What is actually happening?
The compiler exits with an error:
Uncaught (in promise) ReferenceError: $divclass is not defined

It looks like the component instance is not available to the compiled template.
If I do
compile('
Click me!
')

the compilation succeed but when I click I have the following error:
Uncaught ReferenceError: $emit is not defined
Maybe it is an expected behavior due to a technical limitation?

compile() returns function meant to be used as the render function of a component. it does not return a component object and can't be passed to h().
import { compile } from 'vue';

export default {
  name: 'Compiled',
  setup() {
    return {};
  },
  render: compile('
This is an example
'),
};

Thank you Linus for the help and sorry for the false issue


Logging goes to console instead of log file

Customer says ...
When we get the API read/write limit error, the call stack will print out to console. The call stack should be print out to log file, not console.
Exception in thread "Thread-4" com.microsoft.rest.RestException: Status code 429, {"error":{"code":"SubscriptionRequestsThrottled","message":"Number of write requests for subscription '226d7034-8f48-418c-b993-de86d8fc5947' exceeded the limit of '1200' for time interval '01:00:00'. Please try again after '15' minutes."}}
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
Customer sets logger using Private static Logger log = Logger.getLogger(CustomerClassThatUsesAzureLibs.class);

We never print stack traces directly. We simply throw them. If the customer would like to redirect them to a log they need to do so manually.

exceptions get printed in the error stream by design. To get them in the output stream, they need to be caught explicitly by user code.


Ting/update house keeping dev

Description
This PR do a few housekeeping tasks to the dev branch.
Major changes

Get master and dev in sync
Update README
Revert unwanted changes

@cej8 I test build the current branch and it works fine, so I'm a bit reluctant to make changes to the pods.However


Train baseline models for evaluation

We need to eval the experts that are merged against if we trained a 1b Pythia model all together.

Trained with all layers on the 6 datasets we have.
Trained with just the upper layers.

To keep it fair, we would need to get the exact same 8000 random train example each for the 7 dataset we used in the ohter experiments. And we merge the 6 experts with basic averaging and run the same eval from the 7 dataset on that model.
This will give us a comparison of :

training all layers on same token and data
training some layers on same token and data
merging with different experts trained on same compute

Have you tried using the EleutherAI eval harness? It should give you a nice representation on how well the model performs, and can be used as an indicator?

I didn't understand the part about the 1000 training examples. Our datasets are much bigger than that!

didn't we just train our models on 1000 examples only? Or did i misunderstand that

We definately should try on eleuther eval harness. but just testing validity loss will tell us something too. regular finetuing vs. expert finetuning + merge

We have an issue for Eval Harness in the backlog.

so i am told that:
It seems they were trained on 1k batches
I think the batch size was 8 because of the number of GPUs
So that gives uhs 8k samples
So the above 1000 examples should be 8K examples.

@ontocord  for 2. we want layer_9,10,11,12,13 ?

@jordiclive @ontocord
We had used layers 9-13 when we trained the experts. See: https://github.com/ontocord/MDEL/blob/main/src/mdel/train.sh#L4

@jordiclive Any updates on this issue?

@mrcabbage972 I trained 1. a model (all layers) on the exact splits...https://wandb.ai/ontocord/jordi_testing/runs/hu8j9ta1?workspace=user-jordanclive if you toggle the evaluation.
But I  then thought we decided on automating the experiment again with more training data/less validation, maybe same amount of final testing data #47


several depthai variables are uninitialized -- may/not lead to coding errors or crashes

In the precompiled depthai windows distribution, I have found 17 cases of variables not being initialized. This leaves those variables in an undefined state with unknown data in them. This may be ok, or may be bad. Only a code review can discern.
The fix is to always initialize variables to a known state.
Setup

all compilers and OS
Seen in the headers of precompiled Windows distrib:  depthai-core-v2.11.1-win64. I have not analyzed the entire codebase as I can't yet compile the whole depthai SDK.

Repro

Enable warnings and code analyzer e.g. in MSVC it is with /W4  /analyze:plugin EspXEngine.dll and env var `esp.extensions=cppcorecheck.dll' https://docs.microsoft.com/en-us/cpp/code-quality/using-the-cpp-core-guidelines-checkers?view=msvc-170
Compile an app that uses the depthai-core-v2.11.1-win64 and simple code that cascades to headers like common/Rect.hpp or pipeline/Node.hpp. Most any code, even just a dai device, will do this.

Result
In my case of using just the headers, I found 17 failures to initialize variables. Most are in Luxonis code.
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\properties\IMUProperties.hpp(164) : warning C26495: Variable 'dai::IMUSensorConfig::sensorId' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\datatype\RawNNData.hpp(43) : warning C26495: Variable 'dai::TensorInfo::numDimensions' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\datatype\RawNNData.hpp(43) : warning C26495: Variable 'dai::TensorInfo::order' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\datatype\RawNNData.hpp(43) : warning C26495: Variable 'dai::TensorInfo::dataType' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\datatype\RawNNData.hpp(43) : warning C26495: Variable 'dai::TensorInfo::offset' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\datatype\RawSpatialLocations.hpp(46) : warning C26495: Variable 'dai::SpatialLocations::depthMin' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\datatype\RawSpatialLocations.hpp(46) : warning C26495: Variable 'dai::SpatialLocations::depthAverage' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\datatype\RawSpatialLocations.hpp(46) : warning C26495: Variable 'dai::SpatialLocations::depthMax' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\datatype\RawSpatialLocations.hpp(46) : warning C26495: Variable 'dai::SpatialLocations::depthAveragePixelCount' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\datatype\RawTracklets.hpp(55) : warning C26495: Variable 'dai::Tracklet::age' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\datatype\RawTracklets.hpp(55) : warning C26495: Variable 'dai::Tracklet::srcImgDetection' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\datatype\RawTracklets.hpp(55) : warning C26495: Variable 'dai::Tracklet::id' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\datatype\RawTracklets.hpp(55) : warning C26495: Variable 'dai::Tracklet::status' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\datatype\RawTracklets.hpp(55) : warning C26495: Variable 'dai::Tracklet::label' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\include\depthai-shared\datatype\RawTrackedFeatures.hpp(41) : warning C26495: Variable 'dai::TrackedFeature::id' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\lib\cmake\depthai\dependencies\include\nlohmann\json.hpp(18509) : warning C26495: Variable 'nlohmann::basic_json<std::map,std::vector,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,bool,__int64,unsigned __int64,double,std::allocator,nlohmann::adl_serializer,std::vector<unsigned char,std::allocator<unsigned char> > >::m_type' is uninitialized. Always initialize a member variable (type.6).
[build] C:\repos-nobackup\depthai-core-v2.11.1-win64\lib\cmake\depthai\dependencies\include\nlohmann\json.hpp(18509) : warning C26495: Variable 'nlohmann::basic_json<std::map,std::vector,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,bool,__int64,unsigned __int64,double,std::allocator,nlohmann::adl_serializer,std::vector<unsigned char,std::allocator<unsigned char> > >::m_value' is uninitialized. Always initialize a member variable (type.6).

Expected
No errors of uninitialized variables.

Thanks for the report.
We have clang-tidy as part of CI, but we didn't really get into solving the warnings reported.
If you are willing to contribute, pull requests are welcome, otherwise,  we will get into these in the shortest time possible.
In this case, the warnings aren't harmful, since these are data received from device which are always initialized.

To verify then...all 15 of the variables in Luxions code are guaranteed to be set/initialized by other/internal code before any possibility of them being read?
If this is true via code review, then I can workaround/ignore this specific code error on those specific files to move forward with a compile.
I won't be able to fix these in any reasonable time period myself as I would need to understand the corpus of depthai. At the moment, I am focused on getting compiled/working alpha before the end of the year and OAK-D-lite ships.

To verify then...all 15 of the variables in Luxions code are guaranteed to be set/initialized by other/internal code before any possibility of them being read?

Yes, you can safely ignore it.

ok. I'll ignore the 15. Is this also errant possibilty in the 2 from your 3rd party lohnmann json?


[zh-cn] Discuess about 授权 and 鉴权 for translating authn/authz

When re-syncing auth/node.md, @windsonsea fount that authorizer are being translated into "鉴权器" and "授权器" on the same page.
I am confused about which word would be better when looking for documents. So I think it would be great if we reach a rough consensus and write into the glossary of terms in the Mandarin localization guide.
File counts
Including "鉴权": 56 files / 229 lines / 243 words
Including "授权": 68 files / 182 lines / 196 words
Including both terms: 31 files
Mixed files
It's hard to tell the correctness of files including both terms without reviewing them, it will cost a lot of time.
So here is just the line count for occurrence of two terms.
鉴权  授权  總行數  檔案名稱
17   19    2357   content/zh-cn/docs/reference/access-authn-authz/rbac.md
5    6     558    content/zh-cn/docs/concepts/extend-kubernetes/api-extension/custom-resources.md
13   5     226    content/zh-cn/docs/reference/access-authn-authz/node.md
4    7     526    content/zh-cn/docs/tasks/administer-cluster/securing-a-cluster.md
6    4     2410   content/zh-cn/docs/reference/command-line-tools-reference/kube-apiserver.md

3    25    1383   content/zh-cn/docs/concepts/security/pod-security-policy.md
3    4     903    content/zh-cn/docs/reference/access-authn-authz/kubelet-tls-bootstrapping.md
3    4     1003   content/zh-cn/docs/reference/command-line-tools-reference/kube-scheduler.md
7    3     1981   content/zh-cn/docs/reference/command-line-tools-reference/kube-controller-manager.md
10   3     2033   content/zh-cn/docs/reference/access-authn-authz/authentication.md

2    4     1630   content/zh-cn/docs/reference/using-api/api-concepts.md
2    2     2513   content/zh-cn/docs/reference/command-line-tools-reference/kubelet.md
2    2     1151   content/zh-cn/docs/reference/setup-tools/kubeadm/implementation-details.md
2    2     1091   content/zh-cn/docs/concepts/security/multi-tenancy.md
3    2     1374   content/zh-cn/docs/reference/access-authn-authz/admission-controllers.md
15   2     603    content/zh-cn/docs/tasks/extend-kubernetes/configure-aggregation-layer.md

1    4     849    content/zh-cn/docs/reference/access-authn-authz/certificate-signing-requests.md
1    3     668    content/zh-cn/docs/tasks/configure-pod-container/migrate-from-psp.md
1    2     500    content/zh-cn/docs/tasks/configure-pod-container/configure-gmsa.md
1    2     147    content/zh-cn/docs/concepts/cluster-administration/_index.md
1    1     1182   content/zh-cn/docs/concepts/architecture/nodes.md
1    1     344    content/zh-cn/docs/concepts/cluster-administration/system-metrics.md
1    1     373    content/zh-cn/docs/concepts/security/rbac-good-practices.md
1    1     1140   content/zh-cn/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md
1    1     370    content/zh-cn/docs/tasks/administer-cluster/controller-manager-leader-migration.md
1    1     431    content/zh-cn/docs/tasks/administer-cluster/namespaces-walkthrough.md
1    1     519    content/zh-cn/docs/tasks/administer-cluster/namespaces.md
1    1     645    content/zh-cn/docs/tasks/configure-pod-container/configure-service-account.md
2    1     2240   content/zh-cn/docs/concepts/configuration/secret.md
4    1     60     content/zh-cn/docs/reference/access-authn-authz/_index.md
15   1     588    content/zh-cn/docs/setup/production-environment/_index.md

Opinion:
I found this 知乎專欄 article (Security Framework: identification, authorization, authentication, and permission control).
As it said: 授權 mapping to authorization, and 鑑權 mapping to authentication.

According to the official bilingual vocabulary list of Taiwan (temporary unavailable for unknown reason):
authorization is recommended to be translated to 授權 / 核准
authentication is recommended to be translated to 驗證 / 認證 / 鑑別 / 鑑定 / 鑑認
(Just for the reference, it's not that suitable for zh-cn translation.)

Hope we can get inputs from active translators.
CC @windsonsea @tengqm @howieyuen @mengjiao-liu @ydFu

/language zh

wow, in my understanding, current authentication is 身份验证  with less confusion.
Authorizer is recommended to use 鉴权器, and 授权 is for authorize and authorization.
For most people, authz (authorize, authorizer, authorization) is related to 授权 for their first impression. This may cause some review efforts.

current authentication is 身份验证 with less confusion.
Authorizer is recommended to use 鉴权器, and 授权 is for authorize and authorization.

I agree.

current authentication is 身份验证 with less confusion.
Authorizer is recommended to use 鉴权器, and 授权 is for authorize and authorization.

+1

current authentication is 身份验证 with less confusion.
Authorizer is recommended to use 鉴权器, and 授权 is for authorize and authorization.

+1
I refer to the localized content of AKS and EKS, and hold the same opinion.
ref1: AKS
ref2: EKS
/triage accepted

I think we all agree to the translation @windsonsea provided in this comment.
Hey @windsonsea, may I ask you to add it into the glossary of terms? 🙇♂
https://github.com/kubernetes/website/blob/a3f48fd544836e2568a1fdac6481bf6f307acea5/content/zh-cn/docs/contribute/localization_zh.md?plain=1#L340-L350

Ok, let me have a try to add this glossary.


Displaying values within the stacked bars

Hello,
ShowText[Up | Down] options display the title and value together, either within the bars, above them or below them. How can I make the title appear on the top and the value inside the bars?
Kindly advise,
Thanks,
Harsha

Hi Harsha,
I didn't make the component to be displayed like this.
You could try not pass the 'name' param and pass the 'showText' param. It does the value show inside the bars without the title like this:
<HSBar         showText         data={[           { value: 10000, description: "10.000" },           { value: 5000, description: "5.000" },           { value: 3000, description: "3.000" }         ]}       />
Even so I will try to change the component accord your case.


Capturing DynamoDB Client in TypeScript

I've had an exception attempting to capture the DynamoDB client using the code:
import {captureAWSClient} from "aws-xray-sdk-core";

const dynamoDb = captureAWSClient(new DynamoDB.DocumentClient());

(which seems like the correct way to do this)
Error: "TypeError: service.customizeRequests is not a function"
As a workaround, I used this:
import AWS from "aws-sdk";
import {captureAWS} from "aws-xray-sdk-core";

const aws = captureAWS(AWS);
const dynamoDb = new aws.DynamoDB.DocumentClient();

Which works but seems like a cludge.

Hi @luketn,
This issue has been reported in #23, which includes another workaround which doesn't use captureAWS(). I'd recommend you check that out. To summarize though, this doesn't work because the documentClient is different from other AWS clients, so our patcher doesn't work the same way.
One thing worth noting is that V3 of the AWS SDK for JS is around the corner, and hopefully they will standardize the way DocumentClient is created so it can be captured like normal. This is the latest update (or lack thereof) I could find, but I have a feeling it will be much more captureable once it is released in v3. Anyway, I'm going to close this as a dupe of #23, please follow up there with further DocumentClient issues :)

We use aws as a namespace as well so we ended up with this hack:
import * as AWSType from "aws-sdk";				// use only for typing
import { captureAWS } from "aws-xray-sdk-core";
const AWS = captureAWS(AWSType);				// instrumented for logic

then we can use one for typing and one for logic:
let dynamoDB: AWSType.DynamoDB = new AWS.DynamoDB();

I'm trying to use XRay with the SDK v3 without any luck. I cannot find any examples either -- is v3 supported for XRay?
import { SendMessageCommand, SQSClient } from '@aws-sdk/client-sqs';
import { captureAWSClient } from 'aws-xray-sdk-core';
const client = captureAWSClient(new SQSClient({}));

Hi @luisfarzati We are working towards adding the AWS SDK v3 support to X-Ray. This is the related issue and corresponding PR under review.

@luisfarzati

I'm trying to use XRay with the SDK v3 without any luck. I cannot find any examples either -- is v3 supported for XRay?
import { SendMessageCommand, SQSClient } from '@aws-sdk/client-sqs';
import { captureAWSClient } from 'aws-xray-sdk-core';
const client = captureAWSClient(new SQSClient({}));

It's supported now, but you need a different function captureAWSv3Client to wrap the client. This is not well documented.
https://github.com/aws/aws-xray-sdk-node/issues/294
Try:
import { SendMessageCommand, SQSClient } from '@aws-sdk/client-sqs';
import { captureAWSv3Client } from 'aws-xray-sdk-core';
const client = captureAWSv3Client(new SQSClient({}));

Hi I know issue might be closed but how can I trace using Xray for V3 client
const { captureAWSv3Client } = require('aws-xray-sdk-core')
const { DynamoDBClient } = require('@aws-sdk/client-dynamodb')
const { DynamoDBDocumentClient, GetCommand } = require('@aws-sdk/lib-dynamodb')
then
const dynamodb = captureAWSv3Client(new DynamoDBClient(this.dynamoConfig))
this.docClient = DynamoDBDocumentClient.from(dynamodb)
returns
"error",
"msg": "Missing AWS Lambda trace data for X-Ray. Ensure Active Tracing is enabled and no subsegments are created outside the function handler.",
There is no segments created out of this scope.
Is Xray still not supported with V3?


Support for Console Exporter

I have been following the example in the docs to setup OTEL for Stackdriver and it works as expected when running on GCP. But during local development, it is not possible to validate if the metrics are created as expected as there is no option to provide a console exporter even though OTEL has support. Checking the source code, I was hoping to see an interface that could be used to swap out exporters based on the environment in which the code executes but this package only has structs everywhere.
Is this on the roadmap to provide flexibility for exporters?

Our exporters implement the interfaces defined by opentelemetry-go, which aren't currently designed to be environment-based.  Maybe you could add a flag or environment variable to switch to use the stdout exporter, and set the flag when you are developing locally?

So you recommend I use the interfaces from OTEL in the code and then use this package for concrete implementations?

Is SpanExporter the interface you were referring to?

Yes, that is the correct interface.  It is implemented by both the stdout exporter and the gcp trace exporter.

Perfect, I can use this interface in my code and then swap the exporter based on the environment. Thank you for the assistance!


Remove dtrace-provider from optionalDependencies

See #399 and #286 for discussion.
It's pretty clear that dtrace dependency is causing too many problems for its own good. Searching for dtrace issues on this repository brings up plenty of issues.

@melloc, what do you think of this? 🙏

I think this is a good enough start to solve people's issues. I'm also willing to consider a full removal of the dtrace code in the future.

⚠ This issue has been locked due to age. If you have encountered a recent
problem that seems to be covered by this issue, please open a new issue.
Please include a minimal reproducible example
when opening a new issue.


ZD2: bytes 0x8-0xF

Anyone has any ideas about the data represented by the bytes 0x8-0xF in the ZD2 files? These are the 8 (mostly non-zero) bytes following the file magic string.
These bytes appear to be different across different effects, though It's not very obvious what is encoded there. In fact these bytes are among the few which are different between different versions of a given ZD2. For example:

filename
version
bytes [0x8-0xF]

AIR.ZD2
v1.50
[19 EB FF B4 07 00 00 00]

AIR.ZD2
v1.40
[89 4B 53 4B 03 00 00 00]

AIR.ZD2
v1.30
[D3 19 D6 C4 03 00 00 00]

I'd love to believe that it's just some random non-initialized memory but given it's position and peculiarity between versions there is likely some specific meaning to these. Some ideas I considered so far without success:

checksum (md5, crc32); in general it's not clear what could be checksum'ed here, since the contained BMP icon, the ELF payload, and descriptions appear to remain the same between the versions in this case.
some bit-field, perhaps describing pedal models this ZD2 is supported on. Updates are often to add models but it's not obvious how those are encoded.
a bunch of some integer values (it does not appear to be floating-point bytes); well, that's not very meaningful

Love that you are asking these questions, I suspect that every Byte of the ZD2 has meaning...
'Air' is used pretty on every pedal.
$ find -name "list_sorted.txt" -exec grep 0x398a8d8aea4072acb0174117630e0f91 {} \;
0x09000010 : Air (v1.50, 6.40%), 0x398a8d8aea4072acb0174117630e0f91, ./A1 FOUR/unzipped/AIR.ZD2
0x09000010 : Air (v1.50, 6.40%), 0x398a8d8aea4072acb0174117630e0f91, ./A1X FOUR/unzipped/AIR.ZD2
0x09000010 : Air (v1.50, 6.40%), 0x398a8d8aea4072acb0174117630e0f91, ./G1X FOUR/unzipped/AIR.ZD2
0x09000010 : Air (v1.50, 6.40%), 0x398a8d8aea4072acb0174117630e0f91, ./G11/unzipped/AIR.ZD2
0x09000010 : Air (v1.50, 6.40%), 0x398a8d8aea4072acb0174117630e0f91, ./B1X FOUR/unzipped/AIR.ZD2
0x09000010 : Air (v1.50, 6.40%), 0x398a8d8aea4072acb0174117630e0f91, ./G1 FOUR/unzipped/AIR.ZD2
0x09000010 : Air (v1.50, 6.40%), 0x398a8d8aea4072acb0174117630e0f91, ./B1 FOUR/unzipped/AIR.ZD2
0x09000010 : Air (v1.50, 6.40%), 0x398a8d8aea4072acb0174117630e0f91, ./G3n/unzipped/AIR.ZD2
0x09000010 : Air (v1.50, 6.40%), 0x398a8d8aea4072acb0174117630e0f91, ./B3n/unzipped/AIR.ZD2
0x09000010 : Air (v1.50, 6.40%), 0x398a8d8aea4072acb0174117630e0f91, ./G6/unzipped/AIR.ZD2
0x09000010 : Air (v1.50, 6.40%), 0x398a8d8aea4072acb0174117630e0f91, ./G5n/unzipped/AIR.ZD2
0x09000010 : Air (v1.50, 6.40%), 0x398a8d8aea4072acb0174117630e0f91, ./G3Xn/unzipped/AIR.ZD2

So the Bytes that you are questioning are in the first line...
$ hexdump -C "./G1X FOUR/unzipped/AIR.ZD2" | head
00000000  5a 44 4c 46 78 00 00 00  19 eb ff b4 07 00 00 00  |ZDLFx...........|
00000010  01 00 01 00 01 00 00 00  80 00 00 00 00 00 00 00  |................|
00000020  00 00 00 00 00 00 00 00  80 00 00 00 00 00 00 00  |................|

And is the first 4 bytes of the 'Unknown' section.
$ python3 ../decode_effect.py -d "./G1X FOUR/unzipped/AIR.ZD2"
Container:
    length = 120
    hexdump = hexundump("""
    0000   19 EB FF B4 07 00 00 00 01 00 01 00 01 00 00 00   ................
    0010   80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ................
    0020   80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ................
    0030   80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ................
    0040   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ................
    0050   01                                                .
    """)

    unknown = b'\x19\xeb\xff\xb4\x07\x00\x00\x00\x01\x00\x01\x00\x01\x00\x00\x00'... (truncated, total 81)
    version = u'1.50' (total 4)
    group = 9
    id = 150994960
    aname = u'Air' (total 3)
    bname = b"Air\x00\x00\x00\x00\x00\xae'=" (total 11)
    name = u'Air' (total 3)
    groupname = u'REVERB' (total 6)
    hex3 = hexundump("""
    0000   00 5A 27 09 1B 98                                 .Z'...
    """)

    unknown3 = b"\x00Z'\t\x1b\x98" (total 6)
    unknown4 = Container:
        unknown4 = ListContainer:
            0
            1
            0
            1
            0
            0
            0
            0
    ICON = Container:
        length = 182
        data = b'BM\xb6\x00\x00\x00\x00\x00\x00\x00>\x00\x00\x00(\x00'... (truncated, total 182)
    TXJ1 = Container:
        length = 56
        data = b'\x95\x94\x89\xae\x96\xc2\x82\xe8\x82\xcc\x8b\xf3\x8bC\x8a\xb4'... (truncated, total 56)
    TXE1 = Container:
        length = 75
        description = u'This effect reproduces the ambie'... (truncated, total 75)
    INFO = Container:
        length = 20
        data = b'\x00\x00\x00\x00REVREVERB\x00\x00\x00' (total 16)
        dspload = 16.0
    DATA = Container:
        length = 13169
        data =<EMAIL_ADDRESS>(truncated, total 13169)
    PRMJ = Container:
        length = 796
        data = b'{  \r\n\t"Parameter'... (truncated, total 796)
    PRME = Container:
        length = 715
        xml = u'{  \r\n\t"Parameters":[  \r\n\t\t{  \r\n\t'... (truncated, total 715)

The reason I mention all of this, is that it becomes trivial to decode ALL of the effects and then compare the various bits of them.

Also note that the values you mentioned are followed by a byte, for the different versions of Air this is either 03 or 07 which is with an extra bit set... would be interesting to figure out what that means too.
I was looking for something that denotes whether an effect is mono/stereo for the input/output.

0x02: 0b0000 0010
0x03: 0b0000 0011
0x07: 0b0000 0111

It's does seem like a bit-field or perhaps a part of the bigger bit-field. Looks like in your sample 0x07 is more prevalent.

'Air' is used pretty on every pedal.

Actually, it's listed for most but not all -- it's not listed directly for H8, R20, A1 D, A1X D; the latter two have no effects at all listed in the 7-list.

 Of the Bytes 12 through to -16 bytes from end of file. I'll add this functionality to the main code.

Nice find. Can you give an explicit example of the matching bytes? Say, you can use any of the AIR.ZD2 versions.
In general this indeed could be the case, as the trailing 16 bytes of ZD2 are the ones which are also differing between the versions of the effect's ZD2. However, while these are different between v1.30 and v1.40, these trailing bytes are the same between v1.40 and v1.50.

... Seems not all the effects pass the checksum validation

I looked into OPTCOMP.ZD2 versions.
Curiously, two recent versions (1.40, 1.50) list the same values in the checksum field ([f9 7d 83 4d]), yet these have different inverted-CRC32 checksum for their "body" (0x490f713c, 0x3c4ebb35). Neither matches. While the checksums  in the file version 1.30 seem to match according to the algorithm above.
The only two parts where the v1.40 and v1.50 differ are the version string and the first byte of the "body" ( 0x03 vs. 0x07).
Not sure if this is just a human edit error or the algorithm above takes some additional details.

Your understanding of the CR32 coding is correct.
Further the body is split in to the sections which start with the markers "ICON", "TXJ1", "TXE1", "INFO", "DATA", "PRMJ" and "PRME".
I pushed a couple of quick changes to help experimentation, though since I was already creating ZD2 by patching others together I don't think that the pedal actually checks the CRC32. Since we know about it, it's better to correct the parameter when writing ZD2 file....
I also suspect that the incorrect CRC32 seen in the official ZD2 is some sloppiness within Zoom. Maybe they had to fix something, and took a shortcut?

While most of the "Invalid" have 07, a couple have 05. And there are lots of "Valid" which have 07. I don't think these things are connected.
checksum_validation.txt

Well, 0x05 and 0x07 both have the upper bit set, unlike 0x03. It's quite possible that the upper bit describes the type of the update. In those cases that have 0x07 (that I checked)  the update introduced by the version is just the version number bump, that is there's no actual code changes. Meanwhile, versions with 0x03 (or lower??) do have differences in the code sections.
In that sense, the checksum may be directly pointing to the version of the effect's code, almost like a version-control hash. Though it's not clear why one would want to promote the version number without actual code changes.

When I mentioned that maybe Zoom took a shortcut, I meant that maybe an engineer just fixed an issue with the data by hand editing the file (or maybe skipped some part of the process to re-create the checksum).... these things happen in production.
I'm not convinced that changing the parts of the file that the CRC32 applies would have any benefit. I can run the same "find the checksum-ed block" test on a Invalid checksum, to see if it's another block of the file... I doubt it.
I'm under the impression that sections of the ZD2 (other than 'code'), are actually just for GuitarLab to do it's thing (display ICON, description, etc). I don't know whether the pedal actually does anything with them.... can check by changing and seeing if pedal behavior remains the same.


Async Support?

The connect method is http?Why not to support Async?

Because this class was created using Net.4 (that not support async) and when I had migrated to CoreClr I just adapted connection to use GetAsync in sync mode :)
But I intend change this in version 4.1


 pops up and requires confirmation. I'm not sure if a preference even exists to disable this message, but it would be great if there were!

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

ID: ee85c2aa-f4df-d3b9-1491-76b662cc748a
Version Independent ID: eadbcd7e-16f3-0ead-3e6a-530bfd999e1b
Content: Set preferences for Outlook for Mac - Deploy Office
Content Source: DeployOffice/mac/preferences-outlook.md
Service: o365-proplus-itpro
Sub-service: office-mac
GitHub Login: @DHB-MSFT
Microsoft Alias: danbrown

@pbowden-msft  Is there a way to disable this confirmation message?

@DHB-MSFT legacy Outlook had a preference to disable the dialog. However, Phoenix doesn't appear to honor this preference. I've opened bug 7437553


Is it possible to dynamically determine node size and provide it to vtree?

Heya 👋
First of all, sorry if I'm asking a known question, I'm just not too familiar with this library.
I've a tree structure whose nodes can have different heights. I'm not sure if I can know each height easily though. For some nodes I can calculate it just by knowing the content since they are text. But other nodes have things like embed content that can have hard to determine heights.
react-virtualized has CellMeasurer, which is available for tree structures in https://diogofcunha.github.io/react-virtualized-tree/#/examples/node-measure.
The resize function sounds like it should help with this, if I had a way to measure the height of the element directly. react-window seems to be working on just-in-time measured content in https://github.com/bvaughn/react-window/issues/6. But it's not very clear to me how could it be applied to the vtree nodes.
Is there a good way to determine the node height and pass it to the resize function, similar to CellMeasurer?

Hi @filipesilva, thanks for the question. Actually, that's the first time I meet that case, so I don't have the ready answer for you.
However, I have a couple of thoughts about it. The approach is quite simple and usually used for auto-sizing a textarea element. All you need is the div element, absolutely positioned and moved out of visibility. Then, during the run of treeWalker, you calculate each element's height putting it to that div and getting the real height of that element. The requirement is that you need elements to load synchronously. Then you measure the height of the hidden element and put it to the defaultHeight of the yielding object in treeWalker. And voila: you have all the heights calculated.
The issue is a performance penalty, so, probably, you would need a cache to avoid re-calculating the height of the already measured element because the treeWalker runs each time you toggle the tree branch.
If you need asynchronous elements, you may want to use the resize function of the tree node. I'm not sure where it should be called; probably, in the Node component on mounting.

Hi @filipesilva, thanks for the question. Actually, that's the first time I meet that case, so I don't have the ready answer for you.
However, I have a couple of thoughts about it. The approach is quite simple and usually used for auto-sizing a textarea element. All you need is the div element, absolutely positioned and moved out of visibility. Then, during the run of treeWalker, you calculate each element's height putting it to that div and getting the real height of the element. The requirement is that you need elements to load synchronously. Then you measure the height of the hidden element and put it to the defaultHeight of the yielding object in the treeWalker. And voila: you have all the heights calculated.
The issue is a performance penalty, so, probably, you would need a cache to avoid re-calculating the height of the already measured element because the treeWalker runs each time you toggle the tree branch.
If you need asynchronous elements, you may want to use the resize function of the tree node. I'm not sure where it should be called; probably, in the Node component on mounting.

Thanks for the quick reply! I think your suggestion is exactly what https://github.com/bvaughn/react-window/pull/102 (the PR for https://github.com/bvaughn/react-window/issues/6) does. I imagine the most performant way of doing it is to do it asynchronously, so that the initial render isn't blocked.
You mentioned it was a common technique for textareas. Do you know of a library that does it well?

@filipesilva, yeah, probably, that's the only way we have for now.

You mentioned it was a common technique for textareas. Do you know of a library that does it well?

Sure. When I studied that topic, I have gone through the Andrey Popp's react-textarea-autosize. There is a lot of code but the part that is interesting for you is the calculateNodeHeight function.

Ok, I would consider this question as answered. Feel free to reopen if you have something to add!


HTTP 500 while creating users

Description
I tried to create a new user, user visibility was defaulted to private, but after clicking Create user - error 500.
Should it be a 500 error? May be a more user friendly message?
But I set user visibility to "Private", and Public users are indeed disallowed. And there was no "Public" item in visibility dropdown at all.
It looks like UI inconsistency between default dropdown selection and data passed to backend.
If I re-select Private in dropdown, user created without error.

Gitea Version
1.20
Can you reproduce the bug on the Gitea demo site?
No
Log Gist
No response
Screenshots
No response
Git Version
No response
Operating System
No response
How are you running Gitea?
win service
Database
None

But this is a new user creation, not updating existing one. Looks more like a UI issue, where wrong item from dropdown select is passed to back.

It's fixed

I am facing the same issue. We have 2 gitea instances deployed (dev and prod) with the same settings in the helmrelease. In prod i can create a user when the visibility is set to private, but in dev i get 500.


fix(sdk)!: preserve order of objects returned by drive

Issue being fixed or feature implemented

What was done?

How Has This Been Tested?

Breaking Changes
In Rust SDK, returned objects are IndexMap/IndexSet instead of previous BTreeMap.
Checklist:

[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have added or updated relevant unit/integration/functional/e2e tests
[ ] I have added "!" to the title and described breaking changes in the corresponding section if my code contains any
[ ] I have made corresponding changes to the documentation if needed

For repository code-owners and collaborators only

[ ] I have assigned this pull request to a milestone

@coderabbitai review

@coderabbitai review


[WIP] Autogenerate fixtures

This one is getting too complicated, much simpler option would be to use the lab as is, but provide compiler based on current LLVM_ROOT: #353


feat: LSDV-3896-2: Panel grouping

PR fulfills these requirements

[x] Commit message(s) and PR title follows the format [fix|feat|ci|chore|doc]: TICKET-ID: Short description of change made ex. fix: DEV-XXXX: Removed inconsistent code usage causing intermittent errors
[ ] Tests for the changes have been added/updated (for bug fixes/features)
[ ] Docs have been added/updated (for bug fixes/features)
[ ] Best efforts were made to ensure docs/code are concise and coherent (checked for spelling/grammatical errors, commented out code, debug logs etc.)
[x] Self-reviewed and ran all changes on a local instance (for bug fixes/features)

Change has impacts in these area(s)
(check all that apply)

[ ] Product design
[x] Frontend

Describe the reason for change
(link to issue, supportive screenshots etc.)
What does this fix?
(if this is a bug fix)
What is the new behavior?
(if this is a breaking or feature change)
What is the current behavior?
(if this is a breaking or feature change)
What libraries were added/updated?
(list all with version changes)
Does this change affect performance?
(if so describe the impacts positive or negative)
Does this change affect security?
(if so describe the impacts positive or negative)
What alternative approaches were there?
(briefly list any if applicable)
What feature flags were used to cover this change?
(briefly list any if applicable)
Does this PR introduce a breaking change?
(check only one)

[ ] Yes, and covered entirely by feature flag(s)
[ ] Yes, and covered partially by feature flag(s)
[ ] No
[ ] Not sure (briefly explain the situation below)

What level of testing was included in the change?
(check all that apply)

[ ] e2e
[ ] integration
[ ] unit

Which logical domain(s) does this change affect?
(for bug fixes/features, be as precise as possible. ex. Authentication, Annotation History, Review Stream etc.)

Codecov Report
Base: 63.79% // Head: 63.48% // Decreases project coverage by -0.32% :warning:

Coverage data is based on head (709336c) compared to base (e3835c1).
Patch coverage: 38.28% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1211      +/-   ##
==========================================
- Coverage   63.79%   63.48%   -0.32%
==========================================
  Files         390      399       +9
  Lines       24901    25163     +262
  Branches     6358     6466     +108
==========================================
+ Hits        15885    15974      +89
- Misses       9016     9189     +173

Impacted Files
Coverage Δ

...onents/AnnotationsCarousel/__tests__/sampleData.js
100.00% <ø> (ø)

src/components/BottomBar/CurrentTask.js
0.00% <0.00%> (ø)

src/components/CurrentEntity/GroundTruth.js
18.18% <0.00%> (-1.82%)
:arrow_down:

...omponents/SidePanels/DetailsPanel/DetailsPanel.tsx
89.28% <ø> (ø)

src/components/BottomBar/Controls.js
5.19% <5.19%> (ø)

src/components/BottomBar/Actions.js
7.14% <7.14%> (ø)

src/components/BottomBar/BottomBar.js
10.00% <10.00%> (ø)

src/components/BottomBar/HistoryActions.js
16.66% <16.66%> (ø)

src/components/TopBar/TopBar.js
66.66% <57.14%> (-26.20%)
:arrow_down:

src/components/SidePanels/PanelBase.tsx
91.85% <57.89%> (-5.69%)
:arrow_down:

... and 10 more

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 at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Avoid port conflict in address manager.

In our test, we see that apiserver secure-port and insecure-port got assigned to the same value:
I1204 04:59:43.252421      40 flags.go:33] FLAG: --insecure-port="34745"
...
I1204 04:59:43.252598      40 flags.go:33] FLAG: --secure-port="34745"

We should try to avoid that.

/assign @mengqiy

/test pull-frameworks-test

/lgtm
/assign @hoegaarden
for approval

Kindly ping @hoegaarden

@hoegaarden Feel free to replace with a better solution later. :)

/lgtm

/unhold


Throw specific exceptions

Make it possible to catch runtime problems without needing to string-match the message.
There's plenty more cleanup/refactoring I could do, this aught to be enough for now.

LGTM.


✨ Add Spectra ✨

✨ Adds Spectra Theme to the themes collection repository! ✨

Does this theme differ from the default one just in the colouring?

Gradient added to buttons,
Bottom bar thicker top-border with gradient,
Customizable gradients through dynamic shading of panels,
and more features.
It's just a CSS change, as I aimed to do everything without JavaScript involvement, but it does change many things.

I'm not sure it is enough for a new theme. But thanks for contributing.


[Range Calendar]

Codecov Report

Merging #334 into master will increase coverage by 0.06%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master    #334      +/-   ##
=========================================
+ Coverage   96.43%   96.5%   +0.06%
=========================================
  Files         421     423       +2
  Lines        3367    3431      +64
  Branches      370     386      +16
=========================================
+ Hits         3247    3311      +64
  Misses         98      98
  Partials       22      22

Impacted Files
Coverage Δ

src/components/elements/Calendar/Calendar.tsx
97.22% <100%> (ø)
:arrow_up:

src/components/elements/Calendar/MonthView.tsx
91.66% <100%> (+0.36%)
:arrow_up:

...Calendar/RangeCalendar/ControlledRangeCalendar.tsx
100% <100%> (ø)

.../elements/Calendar/RangeCalendar/RangeCalendar.tsx
100% <100%> (ø)

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 483743f...30a37be. Read the comment docs.


InvalidOperation: /usr/local/share/powershell/Modules/Pode/Private/Helpers.ps1:933

I've created a docker image:
FROM badgerati/pode.web:latest
COPY . /usr/src/app/
EXPOSE 9999
CMD [ "pwsh", "-c", "cd /usr/src/app; ./blahblahs.ps1" ]

When the docker image starts, the script crashes a few times before loading the webserver.
InvalidOperation: /usr/local/share/powershell/Modules/Pode/Private/Helpers.ps1:933
Line |
 933 |          $null = Import-Module $path -DisableNameChecking -Scope Globa …
     |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | The running command stopped because the preference variable
     | "ErrorActionPreference" or common parameter is set to Stop: An item with
     | the same key has already been added. Key: 595860939

at Import-PodeModules, /usr/local/share/powershell/Modules/Pode/Private/Helpers.ps1: line 933
at Open-PodeRunspace, /usr/local/share/powershell/Modules/Pode/Private/Helpers.ps1: line 603
at <ScriptBlock>, <No file>: line 1

After a few restarts, it works fine.
I tried combatting this by putthing this in the top of blahblah.ps1 (before importing pode.web) with:

$global:ProgressPreference = 'SilentlyContinue'
$global:ErrorActionPreference = 'SilentlyContinue'

Is there something obvious i'm doing wrong ? :)

Interesting 🤔
I've seen this error over in Pode, and it was fixed in the latest version - just need to update Pode.Web accordingly.
The error was thrown when other modules were available for being automatically imported. Is there any other modules you're using? Are you using a server.psd1 file at all?

i'm not using a server.psd1 file :)
i just import with Import-Module Pode.Web
i'll wait until a new build. No rush. it's just a minor inconvenience ;)


Fix failing test when run in BST

When travel_to("2015-10-10") is called from a test environment in British Summer Time then Time.now is reported as 2015-10-10 00:00:00 +0100 but the tests assume it’ll be 2015-10-10 00:00:00 +0000.
This means that the time reported in '.metadata' is reported as 'about 15 hours ago' which means the test fails.
I assume that this isn’t being seen on CI because CI lives in UTC(?).

Thanks, @cbaines.


Implementation of reverse type reference lookup

Based on JanK's suggestion, I have implemented the basic logic
for reverse type reference lookup. I have demonstrated basic
functionality of this feature by adding two delegate tests involving
Action and Func<char, char>.
I also had to slightly refactor type signature emitter - my
initial implementation was heavily dependent on parsing an existing
metadata signature but in the resolution process we can hit synthetic
types that don't have such a metadata representation, most notably
for generics.
For this reason I believe we need custom recursive descent into the
type tree and this change includes the initial implementations. For
now I'm keeping the generic signature decoder as it's still used by
method signatures but my current thinking is that it will also become
unneeded at some point and we'll be better of with a custom
implementation matching our exact needs.
Thanks
Tomas

I have removed the reverse lookup per Michal's suggestion and I added initial support for unboxing stubs and shared generics. I have also fixed one bug in the X64 assembly emitter. @MichalStrehovsky and @nattress, PTAL. I'll need to sync up with Simon regarding merging in, I'm prepared to wait for Simon and bite the bullet of the NodeFactory conflict.
Thanks
Tomas

@nattress Sadly I can no longer reply to the particular comment after I pushed the rebased change against your recent merge (please let me know whether there's any more graceful way of doing rebases) but in general, when ModuleToken.IsNull, its Handle is invalid. If you're saying that perhaps we should add an assertion check that we don't inadvertently use the Handle of a null ModuleToken, that sounds like a reasonable suggestion to me.

Yes, an assertion to guide the way would be great thank you

@MichalStrehovsky Ad VALUETYPE vs. NULLABLE - interesting, when I reviewed the code, at first I thought this was just a copy & paste typo but apparently it isn't. Thanks for the suggestion, I'm unifying these in my new commit!

@MichalStrehovsky I have addressed part of your PR feedback in my latest commit and I tried to explain my rationale for the rest in my commit message. I'm looking forward to your additional feedback.
Thanks
Tomas


vertical mirror window for time and date

Construct a vertical mirror window, similar to the header window, to keep the date and time in view

Implemented


4.1.1 develop

So we can incorporate your pull request, please share the following:

Issue - 968

Are you modifying the correct branch? Yes (4.1.1-develop)

Version of MarkLogic Java Client API - 4.1.1

Version of MarkLogic Server (see admin gui on port 8001)

Java version (java -version)

OS and version

What Changed: What happened before this change? What happens without this change?

Incorrect branch. Opened another pull request - 1005.


Missing a commit

Pull Request Template
Description
Amend a missing commit in the previous PR
Fixes: # (issue)
Changes
Please delete options that are not relevant.

[ ] Documentation update

Configuration:

Archai version: 1.0.0
Environment:
OS:

Final checks:

[ ] Follows guidelines of project
[ ] Self-review of code
[ ] Commented code in hard-to-understand areas
[ ] Corresponding changes to the documentation
[ ] Changes generate no new warnings
[ ] Dependent changes have already been merged
[ ] Checked code correction any misspellings

I am sorry. Somehow, the change your requested didn't get included when I merged. Try again.


fix: Sort MSW handlers by path specificity

Solves https://kapeta.atlassian.net/browse/CORE-2102

I's usually suggest we keep this much "logic" in the SDK's though

@hofmeister I agree... thought about placing the code somewhere else, but didn't know which SDK to add it to. Any suggestion? 😊

I's usually suggest we keep this much "logic" in the SDK's though

@hofmeister I agree... thought about placing the code somewhere else, but didn't know which SDK to add it to. Any suggestion? 😊

I moved the sorting to a sortHandlers file.
Also tweaked the code comments above API methods to not print empty space when method description is missing.


Automatically download mods on the client

As requested by zackyboy19 on Discord it would be nice if the client automatically downloads mods/assets which are installed on the server.

I'm actually working on something similar for Minecraft.
Mind if I gave this a shot?

Feel free to try it. :) As far as I know no one is currently working on this.


Closes #1213 added pdf and logpdf for BernoulliLogit and VecBernoulli…

…Logit to distributions.jl

I'm not sure if separate types are necessary here, wouldn't just another constructor be sufficient?
I also don't think one should define separate vector-valued distributions since one can define it easily as a product of univariate distributions (in fact, I think VecBinomialLogit should be removed).

That is fair enough, agreed on the vector distributions, I did think it unnecessary but thought I would follow the lead of BinomialLogit, should I remove all of them then?
And what do you mean by another constructor sorry?

That is fair enough, agreed on the vector distributions, I did think it unnecessary but thought I would follow the lead of BinomialLogit, should I remove all of them then?

Just don't add VecBernoulliLogit, I'd say :smiley:

And what do you mean by another constructor sorry?

Sorry, I should have explained it better. I meant that maybe it would be sufficient to add the line
BernoulliLogit(logitp::Real) = BinomialLogit(1, logitp)

and export BernoulliLogit. Then users would be able to use BernoulliLogit but actually internally we would still use the BinomialLogit distribution, so it would just be an additional convenient constructor for BinomialLogit.


fix "no cache found" GitHub Actions for compare workflow

I fixed this; the issue was mostly due to the cache not being saved on failures.


F# docs planning

This is a tracking issue for myself, @KathleenDollard and the F# community to track missing F# docs and other improvements we can make. Contributions are welcome
This is all about the docs at https://docs.microsoft.com/dotnet/fsharp/
Specific work items up-for-grabs

Tutorials

[ ] string programming
[ ] regex programming
[ ] list programming
[ ] "Tour of F#" is weak and needs rejig

Language guide

[ ] Indentation-aware syntax, have requested to add this content as a new page: https://fsharpforfunandprofit.com/posts/fsharp-syntax/
[ ] Using Dictionary
[ ] Add overview of .NET collections (Dictionary, List etc.)
[ ] Add overview of object programming
[ ] Add section on MailboxProcessor

F# core library

[ ] https://github.com/dotnet/fsharp/issues/12124

Tools

[ ] Visual Studio Enterprise code coverage is great but needs configuration, see https://docs.microsoft.com/en-us/visualstudio/test/customizing-code-coverage-analysis?view=vs-2022. Pardticularly need to add

   <Attribute>^System\.Runtime\.CompilerServices\.CompilerGeneratedAttribute</Attribute>

Architecture guide

[ ] We can add an F# architecture guide under the .NET architecture guides here and here

Problems identified

[ ] No tutorials on string processing, .NET types (strings, collections, web requests...) etc
[ ] The "tour" uses long chunks of code with discursive text in comments. It is too long and not compelling.
[ ] The language guide is half-guide, half-reference. We make it more "guide" while keeping the reference material
[ ] Language guide is misssing some important overview sections like "object programming"
[ ] Native interop using NativePtr is not covered
[ ] Generic .NET material like https://docs.microsoft.com/dotnet/ contains very few F# references. We can update this.

Completed work items

[x] Language guide is not organized #26804
[x] Document primary scenarios (web development, machine learning, azure) #26804

cc @cartermp and @baronfel for thoughts

A few (possibly outdated) Language Guide issues I remember from https://github.com/fsharp/fslang-suggestions/issues/523#issuecomment-899012504:

Add double and single types and replace usages of float and float32 with them.
Add Type[] syntax and replace usages of Type array with it.
Add note why Type[] declares an array (because C#) whereas [value] defines a list (because OCaml).
Add an equivalence table inspired by my description in fsharp/fslang-suggestions#1062 to quickly look up and compare different property/method syntaxes.
Add member _ syntax and (possibly?) replace usages of member this with it when this is unused.
Add page comparing and contrasting Task vs Async (CC @Ryan-Palmer).

I've had thoughts about several ways to update the Tour for a while & should have time this weekend. I don't see an issue in this repo specific to that, should I create one to track it?


[BUG]: Unable to run start after update healenium proxy to version 2.1.2

Describe the bug
When sending commands to healenium proxy, its should forward them to correct path of appium server (which set on SELENIUM_SRVER_URL). im using this url with base_path /wd/path, but the commands from proxy going to appium server url without /wd/hub.
proxy log:
`2024-10-28 16:52:51.261  INFO 1 - [ttp-epoll-2] healenium                        : [Proxy] Using Selenium server: http://appium:4723/wd/hub
2024-10-28 16:52:51.752 ERROR 1 - [ttp-epoll-2] AbstractErrorWebExceptionHandler : [7c4fbf7a-1]  500 Server Error for HTTP POST "/session" java.lang.IllegalArgumentException: Session ID key must be set\n 	at org.openqa.selenium.internal.Require.nonNull(Require.java:61)\n`
you can see im running the appium server on http://appium:4723/wd/hub, but the commands goes to  "/session" and not to  "wd/hub/session", and that why i get 404 error from appium server.
same test worked for me with healenium proxy 1.3.5.
How to reproduce the issue
1.running all healenium components on docker
2. use URL of healenium proxy instead of appium server URL
3. set SELENIUM_SRVER_URL to point the appium server
4. execute the test

Logs appeared during using Healenium
2024-10-28 16:52:51.261  INFO 1 - [ttp-epoll-2] healenium                        : [Proxy] Using Selenium server: http://appium:4723/wd/hub

2024-10-28 16:52:51.752 ERROR 1 - [ttp-epoll-2] AbstractErrorWebExceptionHandler : [7c4fbf7a-1]  500 Server Error for HTTP POST "/session" java.lang.IllegalArgumentException: Session ID key must be set\n 	at org.openqa.selenium.internal.Require.nonNull(Require.java:61)\n

Expected behavior
request should forward to /wd/hub/session
Actual behavior
request forward to /session even that appium using  base_path /wd/path
Healenium Web version
2.1.2
Healenium Backend version
3.4.5
Selenium version
No response
Platform
java
Additional context
No response

Hi @alavi8680 , We recommend to remove "/wd/path" from SELENIUM_SRVER_URL

hey, thanks for response.
im using "/wd/hub" as base path parameter to run my appium server. I'm doing it for backward compatibility, since appium 1 use it by default. thats why I'm using it on SELENIUM_SRVER_URL. there is something else i can do?


Can't edit/remove upstreams (Konga 0.7.3)

It seems that there is no option to delete upstreams and targets in konga 0.7.3. Editing an upstream is also impossible, as the "Submit changes" button seems to always be disabled.

@PauloGDPeixoto, upstreams or target could not be edited or removed on Kong 0.10.1, thats why Konga doesn't have this functionality. You can do so in version 0.10.3 for sure, so this is something that will be implemented in Konga as well.

@PauloGDPeixoto, I've enabled those features in the next branch. If you're using docker you can pull pantsel/konga next.


Consider grouping services by library in generator config

Our repo has a structure to it. We have services contained in libraries. If the generator configuration reflects that, it will help us maintain consistency and confidence in our documentation across all libraries. I am thinking something like:
message LibraryConfiguration {
  string name = 1;
  string display_name = 2;
  string description = 3;
  string cloud_service_root = 4;
  string cloud_service_docs = 5;
  string cloud_quickstart = 6;
  bool experimental = 7;
  repeated ServiceConfiguration service = 8;

  // we can add more knobs, but we should be cautious about doing so.
}

message GeneratorConfiguration {
  repeated LibraryConfiguration library = 1;

  // Support standalone services, for libraries that have handwritten documentation.
  repeated ServiceConfiguration service = 2;
}

At the moment, we generate many things in the scaffolding. https://github.com/googleapis/google-cloud-cpp/blob/a590dc461ad7a725ee0664fb9f61a1d5a4f5b04b/generator/internal/scaffold_generator.cc#L118-L132
I think (at least) the following should be generated for each LibraryConfiguration:

README.md
doc/main.dox
doc/options.dox
quickstart/.bazelrc
samples/BUILD.bazel
samples/CMakeLists.txt

We do not want to move things to the generator config, just because. Some things are easier to maintain in place, and impossible to generalize. An obvious example would be the quickstart/quickstart.cc's.
I explored this some in a branch. I started with the README.md and doc/main.dox:
https://github.com/googleapis/google-cloud-cpp/compare/main...dbolduc:google-cloud-cpp:generator-library-config-dev?expand=1

There is a separate effort to have a single source of truth for all client libraries (across all languages).
I have also been thinking that we could generate main.dox from README.md with a few alterations to make the generation "easy".

The individual service generators know their client names / namespaces / filepaths / endpoints. But there is not a great way to get that information back into standalone_main.cc in order to generate documentation type stuff.
I like the concept of the main-dox-marker https://github.com/googleapis/google-cloud-cpp/blob/ba4669ee64106d6269a451bddcfc6c86cf6cde5a/google/cloud/accessapproval/samples/access_approval_client_samples.cc#L29
Maybe we could extend it and have each service generate a data file that makes the extraction super-duper easy.
// file: google/cloud/library/v1/.foo.dat
Foo                 // service name CamelCase
foo                 // service name snake_case
library_v1          // service namespace

@dbolduc says they have a draft PR, maybe revisit in the next pass.

Closing. We have other thoughts.


add bedroom pop and pollen playlists

Hey, I saw that these were missing and I'd like to have these archived too.

Looks good, thanks for contributing!


New @import build process

This implements the changes discussed in https://github.com/cfpb/capital-framework/issues/151.
Changes

Updated deps.
Bumped to 1.0.0.

Testing

You can't. :neutral_face: There's a chicken vs. the egg scenario here. This project's dependencies now point to the 1.x.x version of other CF components. But those versions aren't in Bower/npm yet because their PRs are still pending. This is why Travis is failing.
The dev branch was thoroughly tested prior to this PR and more testing will occur afterward. There will likely be some kinks to work out after this merge but that's okay -- semver will shield current projects from any bugs.

Review

@Scotchester
@anselmbradford

Notes

Fixes https://github.com/cfpb/capital-framework/issues/153

I also just pushed up task 3 from https://github.com/cfpb/capital-framework/issues/164, removing the compiled CSS from the right side of docs pages.

See https://github.com/cfpb/capital-framework/pull/169#issuecomment-107689434

:eyes:


Error processing and management package

Error production, management, and tracking throughout corso is largely haphazard, having grown organically within each different package.  A singular, curated error management package would normalize much of the differences, and provide maintenance benefits beyond.
Cases that a singular errors management package would be expected to handle:

Coordinating error communication and aggregation.
Throughout graph we have a number of "errUpdater" callback funcs that are passed downstream in order to aggregate lower level errors into a parent multi-err.  We lack a single point of production for parent multi-err, allowing error trees to accrue in place of a singular error list.  Similarly, the functions themselves are often declared anonymously and duplicate similar code, increasing bloat throughout the package.

Identifying app behavior after errors.
Corso can be run in one of two error handling modes: fail-fast and best-attempt.  We have various locations which flag the intended state, but application of, and attention to, that flag can vary (or be omitted) depending on the package.  An error manager would provide a central owner for behavior identification.

Controlling information flow.
Errors, especially between graph support and pkg/errors, have a variety of options to produce greater or fewer details.  These are things like stack traces, body dumps, etc.  Although those functions exist, we have little means of control for end users to decide how much additional details they want, and when.  An error manager would provide a central owner for toggling greater or lesser amounts of debugging details, as well as the means to coordinate how those details are displayed to the end user through logs and other tools.

Normalizing errors for human readable CLI format.
Many of our error states result in a log dump with plenty of chaff info which isn't likely useful to a regular CLI user.  We currently rely on these dumps to identify issues, but as we move towards better logging control and reducing competition between logging and dynamic progress bars, it makes more sense to transform the cli output to a more human readable format.  An error manager would provide a central controller for transforming known error states into well curated outputs in for end users.

API/SDK consumers need well defined errors to be able to handle specific error conditions

#5 is becoming high priority - this may be a good motivation to start this.

@ryanfkeepers is there outstanding work here?


When the EnumToStringConverter is set by the entity, after the batch update enumeration value is executed, the stored string is not a string.

example:
public class Customer
{
     public int Id { get; set; }
     public CustomerStatus Status { get; set; }
}

and configed the dbContext
 modelBuilder
    .Entity<Customer >()
    .Property(e => e.Status )
    .HasConversion<string>();

then excute the batch update
  await ctx.Customers.UpdateAsync(c => c.Id == 1, c => new Customer { Status = CustomerStatus.NotAct });
  ctx.SaveChanges();

sqlserver stored not string , stored int

Hello @dillonnet ,
The v1.8.8 has been released.
Let me know if everything is worked as expected.
Best Regards,
Jonathan

@JonathanMagnan
thank very much for your work ！


Add license

It is a minor thing, but it would probably be a good idea to add a license to the repository, so people know they are free to clone it, run it, and such.

Fixed in ea4f92bb969d151b8cedf10083819b980d19e533


Nuget?

Please add nuget package and share link here. Ty. Good lib

Sorry for the delayed response! This has been published for some years to NuGet under the package name "FullTextIndexer" but I've added a link to the readme, as you suggested - thanks again!


Auto connect devices toggle no persisting

Enabling auto connection does not persist, so autocorrection does not function.
steps to reproduce

Connect a device
enable auto-connect
navigate back to the device's screen, then reselect "view devices."
notices auto connect is no longer enabled

closed with pr #48


Calling pause immediately after onLoop doesn't do anything

Describe the bug
When using useRenderLoop, immediately calling pause doesn't cause the animation to be initially paused:
const { onLoop, pause } = useRenderLoop();
onLoop(() => {
  if (boxMeshRef.value) {
    boxMeshRef.value.rotation.y += 0.01;
  }
});
pause();

I'd expect the above code to result in an animation that doesn't run until play() is ran, but instead, it's as if pause() was never called.
The following also don't work:

Calling pause() in a watcher on boxMeshRef.value
Calling pause() in any watcher with immediate: true
Calling pause() in onMounted()

The only workaround I've found is to call pause() in a nextTick() callback.
Reproduction
https://stackblitz.com/edit/tresjs-basic-q53da8?file=src/components/TheExperience.vue
System Info
  System:
    OS: macOS 13.2.1
    CPU: (10) arm64 Apple M2 Pro
    Memory: 878.45 MB / 16.00 GB
    Shell: 5.8.1 - /bin/zsh
  Binaries:
    Node: 18.15.0 - ~/.nvm/versions/node/v18.15.0/bin/node
    Yarn: 1.22.19 - ~/.nvm/versions/node/v18.15.0/bin/yarn
    npm: 9.5.0 - ~/.nvm/versions/node/v18.15.0/bin/npm
  Browsers:
    Chrome: 112.0.5615.137
    Safari: 16.3
  npmPackages:
    @tresjs/cientos: ^2.0.0-rc.1 => 2.0.0-rc.1
    @tresjs/core: ^2.0.0-rc.2 => 2.0.0-rc.2
    vite: ^4.0.0 => 4.0.1

The new recommended way of adding update callbacks is now useLoop composable https://docs.tresjs.org/api/composables.html#useloop
You can pause it by using:
const { onBeforeRender, pause, resume } = useLoop()

onBeforeRender(({ elapsed }) => {
  sphereRef.value.position.y += Math.sin(elapsed) * 0.01
})

pause() // This will pause the loop
resume() // This will resume the loop


wazero: updates to 1.0.0-pre.2

This is a draft until the actual tag is cut.

I'm closing, in favor of #94.

heh forgot I had this one open 😊


rethrow JWTDecodeException as InvalidTokenException

If you send e.g. "Bearer ggg" as token JWTDecodeException is thrown and propagated all through the system (it's a RuntimeException). Catching it and throwing an InvalidTokenException is better IMHO.

Coverage decreased (-0.4%) to 86.902% when pulling bfb14d547734e5e31891cc737fd3b0cdaae26386 on wtobi:master into ff24bd0f4256647d555bfb423309da72f4e47dbe on Mercateo:master.

Thanks!