Static builds on MacOS ARM64 (Apple Silicon aka M1/M2) don't seem to work as expected

Description of the problem or steps to reproduce
Building on MacOS ARM64 does not work with static compilation.
To Reproduce
Steps to reproduce the behavior:

Use MacOS ARM64
make

Error:
go build -trimpath -ldflags "-s -w -X github.com/zyedidia/micro/v2/internal/util.Version=2.0.12-dev.55 -X github.com/zyedidia/micro/v2/internal/util.CommitHash=651a3010 -X 'github.com/zyedidia/micro/v2/internal/util.CompileDate=April 30, 2023' -linkmode external -extldflags -Wl,-sectcreate,__TEXT,__info_plist,/tmp/micro-info.plist" ./cmd/micro
# github.com/zyedidia/micro/v2/cmd/micro
loadinternal: cannot find runtime/cgo

Hi!
I've been trying to build micro on my M1 (also called Apple Silicon, the newer models are M2.. it's really just AArch64/ARM64), and was getting super obtuse/misleading errors when using the Makefile.
This resulted in researching the fun that is ARM64 MacOS and static linking with Go. I haven't played with Go much, but I have played with llvm etc to know where to dig into why it's not working.. luckily I like deep diving into random topics, and tonights was about static linking madness with MacOS.
Here's what I get when trying to run make build-quick on Darwin ARM64:
$ go version
go version go1.20.3 darwin/arm64

make build-quick

go build -trimpath -ldflags "-s -w -X github.com/zyedidia/micro/v2/internal/util.Version=2.0.12-dev.55 -X github.com/zyedidia/micro/v2/internal/util.CommitHash=651a3010 -X 'github.com/zyedidia/micro/v2/internal/util.CompileDate=April 30, 2023' -linkmode external -extldflags -Wl,-sectcreate,__TEXT,__info_plist,/tmp/micro-info.plist" ./cmd/micro
# github.com/zyedidia/micro/v2/cmd/micro
loadinternal: cannot find runtime/cgo

Confusing error message, as it leads to so many different answers! This works fine when building on a Linux host, as the builds there aren't static:

GOOS=linux GOARCH=amd64 go generate ./runtime
go build -trimpath -ldflags "-s -w -X github.com/zyedidia/micro/v2/internal/util.Version=2.0.12-dev.55 -X github.com/zyedidia/micro/v2/internal/util.CommitHash=651a3010 -X 'github.com/zyedidia/micro/v2/internal/util.CompileDate=April 30, 2023' " ./cmd/micro

That led me down a rabbit hole, and trying to figure out what's going on. Here's a few things I understand:

Code signing is different with Darwin on ARM64. Linkers such as zld have had issues, and other binaries would just return an error on compilation. It's confusing when it happens. See Issue #42684. This is kind of related to this issue (especially when starting to dig), but I don't think this is the actual issue.

There is a fantastic blog post about static compilation with MacOS ARM64 & Go by Matt Turner, see here. Very informative read and good background information about the issue.

There is a fantastic blog post about static compilation in C on MacOS, which should give you more of a background: https://michaelspangler.io/posts/statically-linking-on-macos.html

tldr; Static linking on MacOS can be painful, especially when it references a library that isn't static.

So trying to compile statically ON MacOS ARM64 doesn't work, as it tries to static compile, where as other operating systems don't when cross-compiling.
So yeah, it's tricky. It seems that static compiling on ARM64 MacOS is a bit of a mess, and you can't just static link certain things. :shrug:.
Fiddling with the flags in tools/info.plist gives me this error, which is closer to the actual issue..
/opt/homebrew/Cellar/go/1.20.3/libexec/pkg/tool/darwin_arm64/link: running cc failed: exit status 1
ld: library not found for -lcrt0.o
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Apparently this wasn't supported by gcc shipped by Apple.

This option will not work on Mac OS X unless all libraries (including libgcc.a) have also been compiled with -static. Since neither a static version of libSystem.dylib nor crt0.o are provided, this option is not useful to most people.

I kept trying both the homebrew version of go and the "official" version to see if they return different errors, however they both result in the same errors.
Development builds vs "production builds"
Usually when you are developing vs when you actually want a "production build", you're in the "Write code" -> "Compile" -> "Test change" feedback loop, building without static linking is fine, as this would increase compilation time anyway, right?
When would you want a static build?
This would be for someone who just wants to download and use micro on Darwin ARM64 and not worry about something weird breaking. This is a good thing.. if it worked :-).
Relevant Go issues for this
https://go-review.googlesource.com/c/go/+/477839
So what's the fix?
I remember reading a while ago that you can add which libraries can be static, and which can be dynamic. For MacOS, this should work.
Which frameworks/libraries do we need to add?

Great post here: https://stackoverflow.com/questions/844819/how-to-static-link-on-os-x

On my MBA M1, running Ventura 13.3, if I remove the static linking part:
otool -L micro

micro:
    /usr/lib/libresolv.9.dylib (compatibility version 1.0.0, current version 1.0.0)
    /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1971.0.0)
    /System/Library/Frameworks/Security.framework/Versions/A/Security (compatibility version 1.0.0, current version 60420.101.2)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1319.100.3)

So IMHO, playing with flags like -lresolv etc in tools/info-plist.go is the way to go, then you can define which libraries can be static and which ones are dynamic.

I’m a bit confused, are you saying that the Darwin arm64 build doesn’t compile on Darwin arm64? That is surprising since we have nightly binaries for Darwin arm64 that are cross compiled and work fine. If you use CGO_ENABLED=0 make does that work?

Yeah sorry, I also added my notes/ramblings as there is a lot of conflicting/outdated information out there.
I've tried CGO_ENABLED=0, and it doesn't change anything. I believe one of the flags is overriding it.
How are the nightly binaries being built? Is it on a MacOS ARM64 builder, or a generic runner that builds everything? If it's the second, yes that will work as it doesn't hit the logic in info-plist.go, where it adds extra flags for MacOS.

I see. The nightly binaries are cross-compiled by a Linux machine. Perhaps those extra flags aren't necessary or should be amended, I'll look into it at the next opportunity I have to use an M1 Mac.

Thanks!
I also figured out how to get builds to work with static linking -- use Go 1.19. go1.19.8 darwin/arm64 works absolutely fine. It looks like Go 1.20 has quite a few changes around cgo, see the release notes.
I included my notes, as it's a bit confusing when researching.
I think a possible solution would be to change how the static linking is done, as you can include which static libraries you want to include, and make the rest dynamic. I recall that when passing flags to the linker, the the last flag has to static, or the linker tries to be helpful and adds other libraries that might make the build fail. The downside with this approach is that if something micro needs changes, the new library will need to be added.
Also see https://github.com/golang/go/issues/58159 , which I think is related, as it looks like the process has changed with go 1.20.


[Bug]: The Agent probe cannot obtain webLogic application traffic

Preflight Checklist

[X] I agree to follow the Code of Conduct that this project adheres to.
[X] I have searched the issue tracker for an issue that matches the one I want to file, without success.
[X] I am not looking for support or already pursued the available support channels without success.

Version
1.0.3
Installation Type
Official Docker Compose
Service Name
DongTai-Core
Describe the details of the bug and the steps to reproduce it
装好探针之后，也成功启动应用和探针
后台可以获取到探针的存活情况以及组件版本
Additional Information
No response
Logs
No response

Thanks for the feedback, the test recurrence has been arranged.

Fixed in v1.0.4

Fixed in v1.0.4


Config file?

I think it would be great if there was a main config file that we could use to set default options for our calls to axios... things like content-type and paramsSerializer

You can set default config for axios which is used by all requests:
axios.defaults.headers.common['Content-Type'] = 'application/x-www-form-urlencoded';
axios.defaults.paramsSerializer = function (params) {};

If you wanted to use a file you could do something like this:
var customConfig = require('./axiosConfig');
Object.assign(axios.defaults, customConfig);

Does this fulfill your use case?

I was thinking more along the lines of something like an .axiosrc for my project, so whenever I import axios it will be preconfigured with those default options. Kind of like your second example but with global effect instead of per-file.

Interesting idea. This would only work in node environments, but could be useful.

@track0x1 Why couldn't you just wrap axios in your own module and apply the config yourself? Then every time you want Axios with your own settings you can just require('my-axios').

I would be happy to merge a PR that implements this.

Closing this due to inactivity. Please feel free to reopen if needed.


backgroundClip:text should add webkit prefix

MDN says that when the value is text most browsers require the webkit prefix:
https://developer.mozilla.org/en-US/docs/Web/CSS/background-clip
Related: https://github.com/necolas/react-native-web/issues/1014

The patch that closed this issue seems to prefix the value rather than the property - https://github.com/rofrischmann/inline-style-prefixer/commit/4ccad4a6800f1e92f828ec49ca8414cf2cc6be9c#r32625325


"No job log entries found" code in custom job via API call (randomly)

Environment

Nautobot version (Docker tag too if applicable): 1.4.3
Python version: Python 3.8.16
Database platform, version:  PostgreSQL
Middleware(s):

Steps to Reproduce

I have developed a custom nautobot-job
from Nautobot GUI it always works correctly
we have issue with API calls, the error appears randomly. I have found only one rule that when they are some changes done on the production server (like any other job or plugin modification) and when nautobot-server is resarted, then the issue appear (and only from API, from GUI it always works).
Error that we can see is :

it goes into Pending state and takes infinity till I kill the job manually
I have verified payload that we provide , and it is always correct . when i do a restart of nautobot server (with command sudo systemctl restart nautobot nautobot-worker nautobot-scheduler ) and send the API call with the same payload - then it will work.
Also the issue appears in other different random situations not exactly related to changes a code on nautobot-server. It just stops working and presents always the same message (as on screenshot) and the Pending state.

API calls should always run the job correctly

I will not be able to use my job on production, as we never know when it will work and when do not

A stuck status of Pending usually means that the job was never picked up by a worker for execution. Can you check the logs of the nautobot-worker service for any relevant error messages?

thanks for answer,
could you please let me know where can i check those logs ? or which commend shall i use

Depends on the specifics of your deployment but journalctl -eu nautobot-worker.service might be a starting point.

Could you please have a look, this is example of "pending" job, from the command from you:
ul 22 22:17:15 : [2023-07-22 22:17:15,330: CRITICAL/MainProcess] Can't decode message body: DecodeError(InterfaceError('connection already closed')) [type:'application/x-nautobot-json' encoding:'utf-8' headers:{'lang': 'py', 'task': 'nautobot.extras.jobs.run_job', 'id': '60d47f5d-cf0d-4629-9e9e-36c936a25e87', 'shadow': None, 'eta': None, 'expires': None, 'group': None, 'group_index': None, 'retries': 0, 'timelimit': [None, 10.0], 'root_id': '60d47f5d-cf0d-4629-9e9e-36c936a25e87', 'parent_id': None, 'argsrepr': '()', 'kwargsrepr': "{'data': {'server_name': 'TEST_SERVER', 'change_number': '12345', 'username': 'username'}, 'request': <nautobot.utilities.utils.NautobotFakeRequest object at 0x7fb6afe5e070>, 'commit': False, 'job_result_pk': UUID('028effc8-7af7-4d9c-9fc7-7aa2938dfd64')}", 'origin': 'gen167790@s>
Jul 22 22:17:15 : body: b'[[], {"data": {"server_name": "TEST_SERVER", "change_number": "12345", "username": "username"}, "request": {"nautobot_type": "nautobot.utilities.utils.NautobotFakeRequest", "META": {"CONTENT_LENGTH": "141", "CONTENT_TYPE": "application/json", "HTTP_ACCEPT": "/", "HTTP_ACCEPT_ENCODING": "gzip, deflate", "HTTP_HOST": "nautobot.sif.jndata.net", "HTTP_USER_AGENT": "python-requests/2.28.1", "QUERY_STRING": "", "REMOTE_ADDR": "<IP_ADDRESS>", "REQUEST_METHOD": "POST", "SERVER_NAME": "_", "SERVER_PORT": "443"}, "POST": {}, "GET": {}, "user": "c7e035b0-64cc-4d26-a8b5-07360082bd99", "path": "/api/extras/jobs/local/job_URL/run/", "id": null}, "commit": false, "job_result_pk": "028effc8-7af7-4d9c-9fc7-7aa2938dfd64"}, {"callbacks": null, "errbacks": null, >
Jul 22 22:17:15 : Traceback (most recent call last):
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/db/backends/base/base.py", line 237, in _cursor
Jul 22 22:17:15 :     return self._prepare_cursor(self.create_cursor(name))
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/utils/asyncio.py", line 33, in inner
Jul 22 22:17:15 :     return func(*args, **kwargs)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/db/backends/postgresql/base.py", line 236, in create_cursor
Jul 22 22:17:15 :     cursor = self.connection.cursor()
Jul 22 22:17:15 : psycopg2.InterfaceError: connection already closed
Jul 22 22:17:15 : The above exception was the direct cause of the following exception:
Jul 22 22:17:15 : Traceback (most recent call last):
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/kombu/serialization.py", line 39, in _reraise_errors
Jul 22 22:17:15 :     yield
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/kombu/serialization.py", line 252, in loads
Jul 22 22:17:15 :     return decode(data)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/nautobot/core/celery/init.py", line 102, in _loads
Jul 22 22:17:15 :     return json.loads(obj, object_hook=nautobot_kombu_json_loads_hook)
Jul 22 22:17:15 :   File "/usr/lib64/python3.8/json/init.py", line 370, in loads
Jul 22 22:17:15 :     return cls(**kw).decode(s)
Jul 22 22:17:15 :   File "/usr/lib64/python3.8/json/decoder.py", line 337, in decode
Jul 22 22:17:15 :     obj, end = self.raw_decode(s, idx=_w(s, 0).end())
Jul 22 22:17:15 :   File "/usr/lib64/python3.8/json/decoder.py", line 353, in raw_decode
Jul 22 22:17:15 :     obj, end = self.scan_once(s, idx)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/nautobot/core/celery/init.py", line 88, in nautobot_kombu_json_loads_hook
Jul 22 22:17:15 :     return cls.nautobot_deserialize(data)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/nautobot/utilities/utils.py", line 444, in nautobot_deserialize
Jul 22 22:17:15 :     obj.user = User.objects.get(pk=obj.user)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/db/models/manager.py", line 85, in manager_method
Jul 22 22:17:15 :     return getattr(self.get_queryset(), name)(*args, **kwargs)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/cacheops/query.py", line 351, in get
Jul 22 22:17:15 :     return qs._no_monkey.get(qs, *args, **kwargs)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/db/models/query.py", line 431, in get
Jul 22 22:17:15 :     num = len(clone)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/db/models/query.py", line 262, in len
Jul 22 22:17:15 :     self._fetch_all()
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/cacheops/query.py", line 281, in _fetch_all
Jul 22 22:17:15 :     self._result_cache = list(self._iterable_class(self))
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/db/models/query.py", line 51, in iter
Jul 22 22:17:15 :     results = compiler.execute_sql(chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/db/models/sql/compiler.py", line 1173, in execute_sql
Jul 22 22:17:15 :     cursor = self.connection.cursor()
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/utils/asyncio.py", line 33, in inner
Jul 22 22:17:15 :     return func(*args, **kwargs)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/db/backends/base/base.py", line 259, in cursor
Jul 22 22:17:15 :     return self._cursor()
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/db/backends/base/base.py", line 237, in _cursor
Jul 22 22:17:15 :     return self._prepare_cursor(self.create_cursor(name))
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/db/utils.py", line 90, in exit
Jul 22 22:17:15 :     raise dj_exc_value.with_traceback(traceback) from exc_value
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/db/backends/base/base.py", line 237, in _cursor
Jul 22 22:17:15 :     return self._prepare_cursor(self.create_cursor(name))
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/utils/asyncio.py", line 33, in inner
Jul 22 22:17:15 :     return func(*args, **kwargs)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/django/db/backends/postgresql/base.py", line 236, in create_cursor
Jul 22 22:17:15 :     cursor = self.connection.cursor()
Jul 22 22:17:15 : django.db.utils.InterfaceError: connection already closed
Jul 22 22:17:15 : During handling of the above exception, another exception occurred:
Jul 22 22:17:15 : Traceback (most recent call last):
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/celery/worker/consumer/consumer.py", line 596, in on_task_received
Jul 22 22:17:15 :     strategy(
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/celery/worker/strategy.py", line 135, in task_message_handler
Jul 22 22:17:15 :     if body is None and 'args' not in message.payload:
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/kombu/message.py", line 209, in payload
Jul 22 22:17:15 :     return self._decoded_cache if self._decoded_cache else self.decode()
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/kombu/message.py", line 194, in decode
Jul 22 22:17:15 :     self._decoded_cache = self._decode()
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/kombu/message.py", line 198, in _decode
Jul 22 22:17:15 :     return loads(self.body, self.content_type,
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/kombu/serialization.py", line 252, in loads
Jul 22 22:17:15 :     return decode(data)
Jul 22 22:17:15 :   File "/usr/lib64/python3.8/contextlib.py", line 131, in exit
Jul 22 22:17:15 :     self.gen.throw(type, value, traceback)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/kombu/serialization.py", line 43, in _reraise_errors
Jul 22 22:17:15 :     reraise(wrapper, wrapper(exc), sys.exc_info()[2])
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/kombu/exceptions.py", line 21, in reraise
Jul 22 22:17:15 :     raise value.with_traceback(tb)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/kombu/serialization.py", line 39, in _reraise_errors
Jul 22 22:17:15 :     yield
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/kombu/serialization.py", line 252, in loads
Jul 22 22:17:15 :     return decode(data)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/nautobot/core/celery/init.py", line 102, in _loads
Jul 22 22:17:15 :     return json.loads(obj, object_hook=nautobot_kombu_json_loads_hook)
Jul 22 22:17:15 :   File "/usr/lib64/python3.8/json/init.py", line 370, in loads
Jul 22 22:17:15 :     return cls(**kw).decode(s)
Jul 22 22:17:15 :   File "/usr/lib64/python3.8/json/decoder.py", line 337, in decode
Jul 22 22:17:15 :     obj, end = self.raw_decode(s, idx=_w(s, 0).end())
Jul 22 22:17:15 :   File "/usr/lib64/python3.8/json/decoder.py", line 353, in raw_decode
Jul 22 22:17:15 :     obj, end = self.scan_once(s, idx)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/nautobot/core/celery/init.py", line 88, in nautobot_kombu_json_loads_hook
Jul 22 22:17:15 :     return cls.nautobot_deserialize(data)
Jul 22 22:17:15 :   File "/opt/nautobot/lib64/python3.8/site-packages/nautobot/utilities/utils.py", line 444, in nautobot_deserialize
Jul 22 22:17:15 :     obj.user = User.objects.get(pk=obj.user)
\

It looks like you're running into the DB connection/forking problem

psycopg2.InterfaceError: connection already closed

There have been several handlings of this, one of the most recent being v1.5.8 (https://github.com/nautobot/nautobot/pull/3105)
You're on a quite old version of Nautobot. Can you see if upgrading helps?

those changes from your link are already added to the newest version of nautobot?
i will report this feedback to our team and see when we can do upgrade

Closing this as stale. @pibjndata Please feel free to re-open if you are able to reproduce this in 1.6


Use rate instead of keep_prob in rnn_cell_impl.py

While running rnn_cell_test found the following warning:
tensorflow/python/ops/rnn_cell_impl.py:1376: calling dropout (from tensorflow.python.ops.nn_ops) with keep_prob is deprecated and will be removed in a future version.
Instructions for updating:
Please use `rate` instead of `keep_prob`. Rate should be set to `rate = 1 - keep_prob`.

This fix replaces deprecated dropout with dropout_v2, and use rate instead
to fix the warning.
Signed-off-by: Yong Tang<EMAIL_ADDRESS>

@ebrevdo Thanks for the review. The PR has be updated. Please take a look.

Nagging Reviewer @ebrevdo: You have been added as a reviewer to this pull request. Please add your review or reassign. It has been 14 days with no activity and the awaiting review label has been applied.

Nagging Reviewer @ebrevdo: You have been added as a reviewer to this pull request. Please add your review or reassign. It has been 29 days with no activity and the awaiting review label has been applied.


feat: Check buy price before listing did not  tax rate calculated

Prerequisites

[X] I have searched for existing issues that already include this feature request, without success.

Describe the Feature Request
I hope that the FUTBIN price will be higher than the purchase price after tax deduction, and then sold automatically
or
I can use my set price to sell if FUTBIN price lower than my set. if  higher than my set just use FUTBIN price.
Describe the Use Case
I use 13000 buy a player, but FUTBIN price is 13250 After tax deduction is 12587 (12500) at this time not selling, wait to FUTBIN price higher than 13750 (After tax 13062) then resell or use my set price (ex: 14000) to sell.
Describe Preferred Solution
No response
Describe Alternatives
No response
Additional Information
My english not good, thank you for watching

Fixed in the latest release


Vim hangs when closing debugger pressing

Hi @BlackIkeEagle ,
Unfortunately I have a little issue, I did not really notice before (saying I don't know if it is knew).
When going using the debugger  and the pressing  vim just hangs.
I don't recall such issue for long time.
Log file does not output anything.
I have a minimal vimrc file with just vdebug (to avoid conflicts with some other plugins)
Where/How can I found something relevant?
Regards,
Dave

I have the same problem

I have the same problem

I use Ubuntu 20.04, vim 8.2
Since when does it stop working for you?

If someone knows ruby and can make sense of the ruby tests that would also help :)

@BlackIkeEagle  it seems that commenting out line 188 in python3/vdebug/connection.py
make things working again.
s.settimout(5)
@terminator-ivanovich @lucc can you confirm?

@dave2309 is this with break_on_open: 1 or 0 ?

@dave2309 and @terminator-ivanovich could you post the relevant vdebug config you are using
I can't reproduce this, F6 always lets me close just fine

Arch5.4.69 (linux-lts), python3.8.5, php7.4.10, xdebug2.9.6, vim8.2.17
from .vimrc :
if !exists('g:vdebug_options')
let g:vdebug_options = {}
endif
let g:vdebug_options.break_on_open = 0
let g:vdebug_options.ide_key = 'VIM'
let g:vdebug_options.watch_window_style = 'compact'
let g:vdebug_options.port = 9000
let g:vdebug_keymap = {
\    "run" : "",
\    "run_to_cursor" : "",
\    "step_over" : "",
\    "step_into" : "",
\    "step_out" : "",
\    "close" : "",
\    "detach" : "",
\    "set_breakpoint" : "",
\    "get_context" : "",
\    "eval_under_cursor" : "",
\    "eval_visual" : "e",
}

@BlackIkeEagle it seems that commenting out line 188 in python3/vdebug/connection.py
make things working again.
s.settimout(5)
@terminator-ivanovich @lucc can you confirm?

This action return very big mistake in my system.

Arch5.4.69 (linux-lts), python3.8.5, php7.4.10, xdebug2.9.6, vim8.2.17(installed by gvim8.2.17)
from .vimrc :
if !exists('g:vdebug_options')
    let g:vdebug_options = {}
endif
let g:vdebug_options.break_on_open = 0
let g:vdebug_options.ide_key = 'VIM'
let g:vdebug_options.watch_window_style = 'compact'
let g:vdebug_options.port = 9000

let g:vdebug_keymap = {
    \    "run" : `"<F5>",`
    \    "run_to_cursor" : "<F9>",
    \    "step_over" : "<F2>",
    \    "step_into" : "<F3>",
    \    "step_out" : "<F4>",
    \    "close" : "<F6>",
    \    "detach" : "<F7>",
    \    "set_breakpoint" : "<F8>",
    \    "get_context" : "<F11>",
    \    "eval_under_cursor" : "<F12>",
    \    "eval_visual" : "<Leader>e",
    \}

I took this keymap from vdebug help pages. I made only this configs with vdebug. I have no any vdebug configs.
In .vimrc I commented all vdebug configs - and vdebug start work nicely - F6 works good, and double-click on superglobals works also good. OK, it's problem in vdebug configs. Thanks, @BlackIkeEagle

@dave2309 is this with break_on_open: 1 or 0 ?

if !exists('g:vdebug_options')
    let g:vdebug_options = {}
endif
let g:vdebug_options.break_on_open = 0
let g:vdebug_options.watch_window_style = 'compact'

@dave2309 is this with break_on_open: 1 or 0 ?

@terminator-ivanovich and @dave2309 the watch_window_style = 'compact' seems to be the issue, I'll look into it further

@BlackIkeEagle steps that I reproduce with FF and brave.

put a breakpoint
start F5
browser to url
on breakpoint stop, just continue F5
vdebug says session finishes (until here all normal)
F6 -> vim hangs with message "debugger.close()"
refresh browser same url
back in vim no longer hangs, can F6 that stop debugger

It seems that instead of closing, it does "restart" waiting for connection, then playing an extra URL does free it.
The issue does not happen if continuous_mode=0 (but I need it due to some pages with a few xhr calls)
Commenting out line 188 make things working for me

@BlackIkeEagle

@terminator-ivanovich and @dave2309 the watch_window_style = 'compact' seems to be the issue, I'll look into it further

Not for me, changing watch_window_style back to expanded does not change the issue... :(

Just noticed, I had it with your settings, and not if I just add it to my original configuration

@BlackIkeEagle can you show your configuration?

@dave2309
This: https://github.com/BlackIkeEagle/vimfiles/blob/master/vimrc-developer#L297-L307 is my default setup

@BlackIkeEagle tried with you default configuration, issue still occurs.
Again commenting out line 188 does work.

@dave2309 if you PR it I'll take it, since this is consistently the solution for you, else I'm updating it this evening.

@BlackIkeEagle PR done, can you check it?

@dave2309 thanks for putting in the effort
Will close this one since I think it will be solved

This issue and #484 were introduced by me in #479, sorry.
I thought that the socket returned by accept() also inherited the timeout, not just the blocking mode, which is why I set a timeout on the client socket in the first place.
This turned out to be wrong, and I eliminated the need for a timeout on the listening socket in my PR, so the current code of not having a timeout anywhere should be correct.


roundabouts are not conflating correctly

The API doesn't generate a match for infinite circles. When city data depicts a roundabout (or a close) as a single segment, it fails to match.

Even when roundabouts are not infinite circles, they wouldn't match correctly in the example I looked at... but the API didn't know that it had failed. Example below. Matches in blue, city data in grey, unmatches in red (there are none).

@kpwebb here's the centerline file that generated the duplicates:
centerline0925_snip1.txt
The example above uses the following matchURL: https://api.sharedstreets.io/v0.1.0/match/geoms?lengthTolerance=0.25&dataSource=osm/planet-180430&ignoreDirection=true&bearingTolerance=35&searchRadius=25&auth=bdd23fa1-7ac5-4158-b354-22ec946bb575
Example of infinite circle:
ObjID: 1065
Example from incorrectly matched RAB:
RefID: 578993ce498a6c2ebfba63a6ba72e694


Fix shell script

fixing the shell script and some typos in it alongisde.

My use of the ternary operator (?:) disappears from more places...
Looks like this was an easy typo, the shell script not updated after the refactoring of package names. I tested the ping function and it looks good.

Hi,
Yea we wanted to have the confirmation we are in the right direction, we
have a session today/tommorow to dial with the amx-start script.
Regards
Niko
On Tue, Jun 8, 2021, 7:50 PM Hadrian Zbarcea @.***>
wrote:

My use of the ternary operator (?:) disappears from more places...
Looks like this was an easy typo, the shell script not updated after the
refactoring of package names. I tested the ping function and it looks good.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/apifocal/activemix/pull/53#issuecomment-856931092,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ATI44B3BIZG76GCQZSISZT3TRZC6DANCNFSM46GHXRWQ
.


Reimplement problem transferring and emitting from the worker-side

Fixes #27213
I've started to add some documentation (especially class JavaDocs) where I started to grasp what's happening.
@ghale if you have some time, I would be glad if you would take a look at this. Especially at the added comments if they are right.

@donat is not online, but we agreed that we address his concerns out of this PR (#27366)

@bot-gradle merge

Your PR is queued. See the queue page for details.

I've cancelled the pre-tested commit build.

Your PR is queued. See the queue page for details.

Pre-tested commit build failed. Click here to see all build failures.

@bot-gradle merge

I've triggered a build for you. Click here to see all failures if there's any.

@bot-gradle cancel

@bot-gradle test RFM

I've triggered the following builds for you. Click here to see all build failures.

PullRequestFeedback build

Your PR is queued. See the queue page for details.

I've cancelled the pre-tested commit build.

I've triggered a build for you. Click here to see all failures if there's any.


Add option to use 'fixed' version of the Watebirds dataset introduced in MaskTune.

You have to add the file also to the pyproject.toml.

You have to add the file also to the pyproject.toml.

Hmm in what way? I can see in EthicML you have raw csv files excluded in the pyproject file.

You have to add the file also to the pyproject.toml.

Hmm in what way? I can see in EthicML you have raw csv files excluded in the pyproject file.

Ah, right, nevermind.


added Neo4j container

Let me know if you'd like anything else for this.

@eastlondoner, #55 has now been merged if you want to use that version of wait_for_logs.

@tillahoffmann thanks, I've updated the PR :-)

@tillahoffmann I've rebased, updated the code and added basic docs.
I re-built the requirements files which pulled in a load of updated dependencies, I hope that's OK.

@tillahoffmann so that requirements update makes the docker client too new for the CI server. So I'll pin docker-compose for now ... new commit incoming.

Yes, it looks a bit fiddly. It looks like it might be docker rather than docker-compose. Fancy adding the pinned version to requirements.in rather than setup.py (that'll mean people can still install a newer version on their machine if they want)?

OK. I manually pinned the docker version in requirements.in Looks like CI is working now :-)

Great! I'll try to send you a PR to the PR to make sure we don't have the same problem in the future. Shouldn't be long.

https://github.com/eastlondoner/testcontainers-python/pull/1


TEST -- NEVER MERGE THIS

@erickson-doug,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

#do-not-merge
i will delete this pr once i finish a test

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/toc.yml
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Server streaming not implemented

Error: NOT IMPLEMENTED
      at GrpcTransport.serverStreaming (/root/node_modules/@protobuf-ts/grpc-transport/build/commonjs/grpc-transport.js:86:15)
      at tail (/root/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/rpc-interceptor.js:21:49)
      at Object.stackIntercept (/root/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/rpc-interceptor.js:26:16)

Is there a way to make a server streaming client that works in NodeJS? I was trying to use the promise-client.

Is it possible that you are using an older version of @protobuf-ts/grpc-transport?
I've had server streaming running for some time now. See here for example:
https://github.com/timostamm/protobuf-ts/blob/10eb14f221341acfc6322b06c55e8e36861510f3/packages/example-chat-system/client.ts#L27
It's a node CLI client using grpc-transport and server streaming.

Is it possible that you are using an older version of @protobuf-ts/grpc-transport?
I've had server streaming running for some time now. See here for example:
https://github.com/timostamm/protobuf-ts/blob/10eb14f221341acfc6322b06c55e8e36861510f3/packages/example-chat-system/client.ts#L27
It's a node CLI client using grpc-transport and server streaming.

Ah wow, I didn't realize I had an older version in my package.json, sorry for that. I see that you're not using the promise-client in any of your node examples. Do you not recommend using that?

Ah wow, I didn't realize I had an older version in my package.json, sorry for that. I see that you're not using the promise-client in any of your node examples. Do you not recommend using that?

I don't know about promise-client 🤷  What is it?
The goal for protobuf-ts is to be able to generate:

generic clients (can use "Transports" to use Twirp, Grpc-Web, gRPC, etc.) (implemented, but gRPC is not well tested yet)
generic servers (can use "Backends" to serve Grpc-Web, gRPC, etc.) (in development, see #56)

In addition to that, because it is trivial to implement and because users know them:

generate clients specifically for @grpc/grpc-js (planned in #57)
generate server interfaces specifically for @grpc/grpc-js (implemented in #52)

For gRPC client and server on node, I recommend --ts_opt server_grpc1 for the server (see example) and --ts_opt client_call with @protobuf-ts/grpc-transport for the client (see example).
I can't recommend using gRPC for production yet. That'll have to wait for the 2.0 release.

I don't know about promise-client 🤷  What is it?
The goal for protobuf-ts is to be able to generate:

generic clients (can use "Transports" to use Twirp, Grpc-Web, gRPC, etc.) (implemented, but gRPC is not well tested yet)
generic servers (can use "Backends" to serve Grpc-Web, gRPC, etc.) (in development, see #56)

In addition to that, because it is trivial to implement and because users know them:

generate clients specifically for @grpc/grpc-js (planned in #57)
generate server interfaces specifically for @grpc/grpc-js (implemented in #52)

For gRPC client and server on node, I recommend --ts_opt server_grpc1 for the server (see example) and --ts_opt client_call with @protobuf-ts/grpc-transport for the client (see example).
I can't recommend using gRPC for production yet. That'll have to wait for the 2.0 release.

promise-client was one of the possible opts in the command, I see some docs for it here: https://github.com/timostamm/protobuf-ts/blob/master/MANUAL.md#rpc-client-styles.
I will go ahead and use the client_call as you recommend! Thank you.

promise-client was one of the possible opts in the command, I see some docs for it here: https://github.com/timostamm/protobuf-ts/blob/master/MANUAL.md#rpc-client-styles.
I will go ahead and use the client_call as you recommend! Thank you.

Hi @timostamm, I know this is off-topic, but since you are being so responsive and helpful, I thought I would ask you another question. I have a server and client I am testing together now. I am getting an error:
Uncaught RpcError: 13 INTERNAL: Cannot read property 'length' of undefined
      at ClientReadableStreamImpl.<anonymous> (/root/node_modules/@protobuf-ts/grpc-transport/build/commonjs/grpc-transport.js:79:52)
      at Object.onReceiveStatus (/root/node_modules/@grpc/grpc-js/src/client.ts:570:18)
      at Object.onReceiveStatus (/root/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
      at /root/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24
      at processTicksAndRejections (internal/process/task_queues.js:79:

I'm thinking this is due to the data I am sending vs the schema? Do you have any tips on how to debug this type of issue or how to get more information on where the error is occurring?

Hi @timostamm, I know this is off-topic, but since you are being so responsive and helpful, I thought I would ask you another question. I have a server and client I am testing together now. I am getting an error:
Uncaught RpcError: 13 INTERNAL: Cannot read property 'length' of undefined
      at ClientReadableStreamImpl.<anonymous> (/root/node_modules/@protobuf-ts/grpc-transport/build/commonjs/grpc-transport.js:79:52)
      at Object.onReceiveStatus (/root/node_modules/@grpc/grpc-js/src/client.ts:570:18)
      at Object.onReceiveStatus (/root/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
      at /root/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24
      at processTicksAndRejections (internal/process/task_queues.js:79:

I'm thinking this is due to the data I am sending vs the schema? Do you have any tips on how to debug this type of issue or how to get more information on where the error is occurring?

promise-client was one of the possible opts in the command, I see some docs for it here: https://github.com/timostamm/protobuf-ts/blob/master/MANUAL.md#rpc-client-styles.

Ah. Yes, client_call is the best choice.

promise-client was one of the possible opts in the command, I see some docs for it here: https://github.com/timostamm/protobuf-ts/blob/master/MANUAL.md#rpc-client-styles.

Ah. Yes, client_call is the best choice.

I am getting an error:
Uncaught RpcError: 13 INTERNAL: Cannot read property 'length' of undefined
      at ClientReadableStreamImpl.<anonymous> (/root/node_modules/@protobuf-ts/grpc-transport/build/commonjs/grpc-transport.js:79:52)
      at Object.onReceiveStatus (/root/node_modules/@grpc/grpc-js/src/client.ts:570:18)
      at Object.onReceiveStatus (/root/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
      at /root/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24
      at processTicksAndRejections (internal/process/task_queues.js:79:

Looks like the error originates somewhere in @grpc/grpc-js.
Unfortunately the stack trace is gone because of new RpcError in grpc-transport.ts.
I would just patch in a console.log statement in grpc-transport.js:79
        gCall.addListener('error', err => {
            console.log(err) // or err.stack?

Then you can follow real the stack trace.

I am getting an error:
Uncaught RpcError: 13 INTERNAL: Cannot read property 'length' of undefined
      at ClientReadableStreamImpl.<anonymous> (/root/node_modules/@protobuf-ts/grpc-transport/build/commonjs/grpc-transport.js:79:52)
      at Object.onReceiveStatus (/root/node_modules/@grpc/grpc-js/src/client.ts:570:18)
      at Object.onReceiveStatus (/root/node_modules/@grpc/grpc-js/src/client-interceptors.ts:389:48)
      at /root/node_modules/@grpc/grpc-js/src/call-stream.ts:249:24
      at processTicksAndRejections (internal/process/task_queues.js:79:

Looks like the error originates somewhere in @grpc/grpc-js.
Unfortunately the stack trace is gone because of new RpcError in grpc-transport.ts.
I would just patch in a console.log statement in grpc-transport.js:79
        gCall.addListener('error', err => {
            console.log(err) // or err.stack?

Then you can follow real the stack trace.

@timostamm one more thing. I'm using google.protobuf.Any in my protobuf and trying to pass in an object into the client which is causing the above error? How are you supposed to use the google.protobuf.Any type?

@timostamm one more thing. I'm using google.protobuf.Any in my protobuf and trying to pass in an object into the client which is causing the above error? How are you supposed to use the google.protobuf.Any type?

Usage is pretty similar to other languages
// Example 2: Pack and unpack a message in Java.
//
//     Foo foo = ...;
//     Any any = Any.pack(foo);
//     ...
//     if (any.is(Foo.class)) {
//       foo = any.unpack(Foo.class);
//     }

let foo: Foo = Foo.create();

let any: Any = Any.pack(foo, Foo);

if (Any.contains(any, Foo)) {
  foo = Any.unpack(any, Foo);
}

If you want to send a message that contains a field with an any:
message MyRequest {
   google.protobuf.Any xxx = 1;
}
message Foo {}

let foo: Foo = {};
let r: MyRequest = {
   xxx : Any.pack(foo, Foo)
};

Any is just binary data of a message + a "type url" that contains the type name. The following is equivalent to Any.pack():
let any: Any = {
   value: Foo.toBinary(foo),
   typeUrl: "type.googleapis.com/Foo"
};

Usage is pretty similar to other languages
// Example 2: Pack and unpack a message in Java.
//
//     Foo foo = ...;
//     Any any = Any.pack(foo);
//     ...
//     if (any.is(Foo.class)) {
//       foo = any.unpack(Foo.class);
//     }

let foo: Foo = Foo.create();

let any: Any = Any.pack(foo, Foo);

if (Any.contains(any, Foo)) {
  foo = Any.unpack(any, Foo);
}

If you want to send a message that contains a field with an any:
message MyRequest {
   google.protobuf.Any xxx = 1;
}
message Foo {}

let foo: Foo = {};
let r: MyRequest = {
   xxx : Any.pack(foo, Foo)
};

Any is just binary data of a message + a "type url" that contains the type name. The following is equivalent to Any.pack():
let any: Any = {
   value: Foo.toBinary(foo),
   typeUrl: "type.googleapis.com/Foo"
};

Thanks so much! I was having a lot of trouble finding TS usage examples. This would be helpful info for the readme, seems like everything online is outdates.

Thanks so much! I was having a lot of trouble finding TS usage examples. This would be helpful info for the readme, seems like everything online is outdates.

Hey @timostamm still having some trouble here. In your example, the Any type maps to another message type. I thought the point of Any is that you don't know the message type upfront and it could be anything.
For example, this does not work, obviously because you can't have a type as a value:
type User = {
  firstName: string;
  lastName: string;
};
GrpcTypes.Any.pack(data, User);

Is there any way to use Any to represent types that are not part of the protobuf schema?

This is an example for a good use case for any:
message Status {
  // The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
  int32 code = 1;

  // A developer-facing error message, which should be in English. Any
  // user-facing error message should be localized and sent in the
  // [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
  string message = 2;

  // A list of messages that carry the error details.  There is a common set of
  // message types for APIs to use.
  repeated google.protobuf.Any details = 3;
}

https://github.com/googleapis/googleapis/blob/master/google/rpc/status.proto
When you create a status message, you put one of the messages defined in error_details.proto in the "details" field.
But if your API has some special requirements where the messages defined in error_details.proto is not sufficients, it is totally fine to put a different message in there.
You just have to take care when reading the message (but that should be obvious when handling an any).

If you really want to pack a "User" into the any, you should have some kind of protobuf declaration for this type.
Or you could just create the type at runtime:
let userType = new MessageType<UnknownMessage>("User", [
    {no: 1, name: "firstName", kind: "scalar", T: ScalarType.STRING},
    {no: 2, name: "lastName", kind: "scalar", T: ScalarType.STRING}
]);

let user = {
    firstName: "a",
    lastName: "b"
};

let any = Any.pack(user, userType);

Of course you have to be pretty careful with that. There are no typescript interfaces preventing you from passing an invalid object.

Or you could assemble the binary data yourself:
let bytes = new BinaryWriter()
    .fork()
    .tag(1, WireType.LengthDelimited)
    .string("a")
    .tag(2, WireType.LengthDelimited)
    .string("b")
    .join()
    .finish();

let any: Any = {
      value: bytes,
      typeUrl: "type.googleapis.com/User"
};

Terrible idea for maintenance, but possible :)

Maybe google.protobuf.Struct is a better match for your use case?
Structs allow arbitrary data. Same types as JSON.
message Foo {
   google.protobuf.Struct user = 1;
}

let foo: Foo = {
   user: Struct.fromJson({
    firstName: "a",
    lastName: "b"
  })
}

Ah, I think a Struct is exactly what I need! Thank you so much for this! You have been amazingly helpful. Please let me know if you have a donation link, I'm happy to support.


fixed overlay opacity issue in the user menu component

Fixes #156 .

Changes proposed in this Pull Request:

update the overlay style in the light and dark theme to resolved this issue

Screenshots / Screen Recording (if applicable)

To Test:

yarn test

Any specific feedback you are looking for?

@RaghavendranC-Eaton what branch does this go in?

Can you add a Changelog entry as well as a minor package version update to the package.json

Added the issue fixed detail in the Changelog and updated the package version in the package.json


Include license file

Make sure the package contains the license file.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


Add internationalisation of dates for worldclock

One minor comment, no need to fix - happy to merge without, let me know either way

Good suggestion, I accepted. Thanks

When merging the PR, considering doing a  squash. Usually people is not interested on the small commits done underdevelopment, they care about the large merge with the new functionality.

Gotya - I think for 4 commits it's ok but shall bear that in mind more when bringing in branches, and thanks!


Create wireframes for the different layouts of the resource trail

We need some wireframes to speed up the process of setting up the resource trail in an appealing layout. We probably need at least:

[ ]  Article page
[ ]  Overview page for a group of articles
[ ]  Main page

Sorry I missed this issue back then. I have only just got email notifications enabled for Github.


Establish a process for SBC Regional Offices so they can support clients with the new AR filing

Establish a process for SBC Regional Offices so they can support clients with the new AR filing
Today, they assist businesses with filing an AR.
Without access codes, we need to establish a new AR process.

moving to a private repo


UDP based transport

Dragonboat currently uses TCP based transport for exchanging Raft messages between NodeHost instances. Such strictly ordered reliable transport is not actually required.
The existing TCP based transport is pretty straight forward, it is implemented in a single .go file with only a couple hundred lines of code -
https://github.com/lni/dragonboat/blob/master/internal/transport/tcp.go
It will be very interesting to experiment whether UDP can be somehow used to achieve better performance. It might be done by using the UDP support in Go's stdlib or build on top of some 3rd party libraries/protocols, e.g. quic-go without HTTP/3.
Note that I've tried the UDP based kcp-go, sadly I failed to get higher bandwidth or lower latency.

some guic-go benchmark results generated by github.com/marten-seemann/quic-go-benchmarks
Benchmark results:
+-----------------+-------------+-------------+
|                 |     TCP     |    QUIC     |
+-----------------+-------------+-------------+
| direct transfer | 0.01 ± 0.00 | 0.19 ± 0.01 |
| 5ms RTT         | 0.05 ± 0.00 | 0.17 ± 0.02 |
| 10ms RTT        | 0.09 ± 0.00 | 0.21 ± 0.04 |
| 25ms RTT        | 0.22 ± 0.01 | 0.32 ± 0.00 |
| 50ms RTT        | 0.44 ± 0.00 | 0.64 ± 0.01 |
| 100ms RTT       | 0.84 ± 0.00 | 1.31 ± 0.00 |
+-----------------+-------------+-------------+
Based on 3 samples (10 MB).

can you compare also kcp ? and what implementation of go-kcp used?

I have a working Impl using https://github.com/lucas-clemente/quic-go (based on existing TCP implementation) do you fancy me doing a PR (I have no numbers yet to confirm if it really is or isn't in any way faster)? Should I add the impl under the plugins folder?

@coufalja that sounds interesting
any quick benchmark data on such quic based transport? I looked into that quic go package in 2019 and the RTT latency was not on par with TCP, see the quic-go-benchmark results posted above. wondering anything changed in the last two years.
for the PR, yes, please put it in the plugin folder.


android executor tests

Codecov Report

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

@@           Coverage Diff           @@
##             main      #73   +/-   ##
=======================================
  Coverage        ?   48.49%
=======================================
  Files           ?       40
  Lines           ?      928
  Branches        ?      119
=======================================
  Hits            ?      450
  Misses          ?      477
  Partials        ?        1

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 e71d9f7...f70c98c. Read the comment docs.


added integration config and array fit slow test

Adding CI for slow integration tests.
Added try catch to report since xlsx write fails.
Probably need to separate out the 6x8 sample for it to work...

Codecov Report

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

@@                 Coverage Diff                  @@
##             googledrive_tests      #67   +/-   ##
====================================================
  Coverage                     ?   35.56%
====================================================
  Files                        ?       24
  Lines                        ?     1687
  Branches                     ?        0
====================================================
  Hits                         ?      600
  Misses                       ?     1087
  Partials                     ?        0

Flag
Coverage Δ

#unittests
35.56% <0.00%> (?)

Continue to review full report at Codecov.

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


Problem with Sync_BN and CUDA

This is what I got from running the code

Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/torch/utils/cpp_extension.py", line 946, in _build_extension_module
    check=True)
  File "/usr/lib/python3.5/subprocess.py", line 708, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "train.py", line 21, in <module>
    from seg_opr.sync_bn import DataParallelModel, Reduce, BatchNorm2d
  File "/Data/TorchSeg/furnace/seg_opr/sync_bn/__init__.py", line 8, in <module>
    from .syncbn import *
  File "/Data/TorchSeg/furnace/seg_opr/sync_bn/syncbn.py", line 17, in <module>
    from .functions import *
  File "/Data/TorchSeg/furnace/seg_opr/sync_bn/functions.py", line 13, in <module>
    from .src import *
  File "/Data/TorchSeg/furnace/seg_opr/sync_bn/src/__init__.py", line 18, in <module>
    ], build_directory=gpu_path, verbose=False)
  File "/usr/local/lib/python3.5/dist-packages/torch/utils/cpp_extension.py", line 645, in load
    is_python_module)
  File "/usr/local/lib/python3.5/dist-packages/torch/utils/cpp_extension.py", line 814, in _jit_compile
    with_cuda=with_cuda)
  File "/usr/local/lib/python3.5/dist-packages/torch/utils/cpp_extension.py", line 863, in _write_ninja_file_and_build
    _build_extension_module(name, build_directory, verbose)
  File "/usr/local/lib/python3.5/dist-packages/torch/utils/cpp_extension.py", line 959, in _build_extension_module
    raise RuntimeError(message)
RuntimeError: Error building extension 'syncbn_gpu': [1/2] /usr/local/cuda/bin/nvcc -DTORCH_EXTENSION_NAME=syncbn_gpu -DTORCH_API_INCLUDE_EXTENSION_H -isystem /usr/local/lib/python3.5/dist-packages/torch/lib/include -isystem /usr/local/lib/python3.5/dist-packages/torch/lib/include/torch/csrc/api/include -isystem /usr/local/lib/python3.5/dist-packages/torch/lib/include/TH -isystem /usr/local/lib/python3.5/dist-packages/torch/lib/include/THC -isystem /usr/local/cuda/include -isystem /usr/include/python3.5m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --compiler-options '-fPIC' -std=c++11 -c /Data/TorchSeg/furnace/seg_opr/sync_bn/src/gpu/syncbn_kernel.cu -o syncbn_kernel.cuda.o
FAILED: syncbn_kernel.cuda.o
/usr/local/cuda/bin/nvcc -DTORCH_EXTENSION_NAME=syncbn_gpu -DTORCH_API_INCLUDE_EXTENSION_H -isystem /usr/local/lib/python3.5/dist-packages/torch/lib/include -isystem /usr/local/lib/python3.5/dist-packages/torch/lib/include/torch/csrc/api/include -isystem /usr/local/lib/python3.5/dist-packages/torch/lib/include/TH -isystem /usr/local/lib/python3.5/dist-packages/torch/lib/include/THC -isystem /usr/local/cuda/include -isystem /usr/include/python3.5m -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --compiler-options '-fPIC' -std=c++11 -c /Data/TorchSeg/furnace/seg_opr/sync_bn/src/gpu/syncbn_kernel.cu -o syncbn_kernel.cuda.o
In file included from /Data/TorchSeg/furnace/seg_opr/sync_bn/src/gpu/syncbn_kernel.cu:4:0:
/usr/local/lib/python3.5/dist-packages/torch/lib/include/ATen/cuda/CUDAContext.h:12:22: fatal error: cusparse.h: No such file or directory
compilation terminated.
ninja: build stopped: subcommand failed.

I looked everywhere and found out that it was CUDA that caused the problem. It seems to be associate with the CUDAContext.h file, it can not found any of the header files, e.g. cusparse.h, cublas_v2.h...
I don't know how to solve it
I've tried reintalling pytorch from source but no use.
Can someone help me, MUCH THANKS!

Hi,
Could you post your solution? Thank you very much!


Remove synconly from Copy-DbaLogin

point people to using Sync-DbaLoginPermission

You copy a login but you sync the permissions for it?

it's just the parameter, the functionality will stay the same. -SyncOnly is an external thing.


Pagination links should include the original resource type in the URL (or be configurable)

I recently had the issue that pagination links created by HAPI are agnostic in terms of what type of resources have initially been queried. This is no problem as such, however, when you apply query authorization by resource type (based on the request URL), - e.g. when using OAuth2 with scopes reflecting these resource types - the agnostic paging links are not helpful at all.
I solved this locally by tweaking the paging URLs in the response using an IServerInterceptor (adding the resource type), and tweaking it back in the paging request using a Servlet Filter (removing the resource type again) and forwarding the modified request, so that normal processing can continue. This all works well, but it feels kind of "hacky"...
Is there are general need for paging links to contain the original resource type? Or should layout of paging links and their processing even be configurable? Comments welcome!

In general the logic behind not providing that kind of thing in the URL (we did think about it) was that by FHIR's definition the URLs are supposed to be  opaque to the client.. so anything we added might become something that the client depended on and we couldn't change, which would be bad.
In your use case though, you don't need it to be non-opaque to the client, but rather to a different part of the server infrastructure. That seems reasonable to me.
I'd be opposed to making something like this be the default (I don't even really like the fact that the page number and size is a part of the URL but what can you do 😄 ) but certainly adding a callback hook wouldn't be a bad thing.

Well, it is still sort of transparent to the client - it's the server-side security infrastructure that usually depends on matching URLs to take authorization decisions...
I could generalize this a bit, like having a strategy pattern that keeps the current behavior as default but leaves the choice to add your own implementation. Depending on a few "thumbs up" votes on this issue, though :-).


Switch from scratch to filler

Here's an attempt to resolve #1067. I'm not strongly attached to "filler" but I'm strongly opposed to "scratch", so if others have a better name, chime in.

Generally in favor, and IMO you've picked a suitable replacement name - I've noted a few minor nits that I don't feel super strongly about. +1

Thanks for the review! PR updated.

"application/vnd.oci.empty.v1+json"
^ why complicate this needlessly?

I'm personally not a fan of "empty" because it's still ambiguous whether it's an actual layer or not (and this isn't intended to be a "proper" layer), so I quite like the proposed "filler" instead.

I'm personally not a fan of "empty" because it's still ambiguous whether it's an actual layer or not (and this isn't intended to be a "proper" layer), so I quite like the proposed "filler" instead.

The goal IINM is to point out that it is a special thing, called something reasonable and best left alone. Do you foresee an "empty" something that folks would actually want to unmarshal/interpret? The very fact that this media-type is present means that this is no longer a "regular" image?

Yes, one of the things that led to this rename proposal is folks doing
exactly that.

As per image-spec media-types - https://github.com/opencontainers/image-spec/blob/main/media-types.md,
layers are application/vnd.oci.image.layer.* and configs are application/vnd.oci.image.config.* things.
Scratch is a special thingie which is neither a layer nor a config and hence application/vnd.oci.scratch.v1+json
If one really wanted a scratch layer, I would have called application/vnd.oci.image.layer.scratch.*
We simply should have documented this better, saying there is no reason to use this except to mutate this container image into an "artifact".
https://github.com/opencontainers/image-spec/blob/main/specs-go/v1/manifest.go#L43
Reading all the conversations earlier - the term scratch appears as a tag, as an emptyfs layer, etc etc
How does renaming it to something else prevent this? "image-spec now has a type to refer to empty thingies called filler, let's use that"??
Maybe we are trying to get away from a certain mental model.

I'm not overly worried about misuse, but am concerned that there's an assumption the scratch blob is tightly connected to the scratch pseudo image. Since the pseudo image (FROM scratch) came first, I think it makes sense to name this something different, so that the media type we're adding isn't considered a recommendation by OCI for how the scratch pseudo image gets created.

OCI specs also have their share of filler episodes?

I don't love filler. I'd prefer empty or event artifact.

@jonjohnsonjr I'm not touching that last suggestion (and for your sake, I'm going to assume it was made in jest :sweat_smile:), but I'm happy to give up my own weakly held opinion on empty in the face of more maintainer opinions, especially if it helps move this :+1:

Along with copious documentation that "this is not what you think it is" ... etc

My hesitation on "empty" was how the phrasing isn't always clear whether an "empty descriptor" doesn't contain any fields at all, or contains the fields pointing to a blob of 0 length, or points to a blob with the {} content. E.g. we would say things like:

This MUST be set when config.mediaType is set to the empty value.

And we would define an EmptyDescriptor value which isn't actually empty.
However, like tianon, my opinion here is weakly held and I'm happy to change this to whatever gains consensus.

And we would define an EmptyDescriptor value which isn't actually empty.

as application/octet-stream perhaps not, but as "...+json" yes?

It's the difference between the content the descriptor points to being empty vs the descriptor itself being empty (which includes a media type, size, digest, and data field). We both understand what we're trying to say, but I'm worried about how things get misinterpreted by those that don't have the history and context behind this.

but I'm worried about how things get misinterpreted by those that don't have the history and context behind this.

I see this as a gross failure in documentation (and perhaps education). Should such uninformed/partially informed concerns force a modification of the spec?
FROM scratch for example is a user-facing concept - everyone writes Dockerfiles. However, IINM, I cannot build an image with just that line. scratch media-type is/was internals and more a concern of tool developers, who in this case happened to misinterpret a unreleased version of the spec.
I am pointing out the shortcomings of the process, the mnemonic itself, like others, not a strong opinion.

If you'd like to make a PR to improve the documentation, please feel free.
That seems orthogonal to me, and improved documentation would be valuable
either way.

If you'd like to make a PR to improve the documentation, please feel free. That seems orthogonal to me, and improved documentation would be valuable either way.

Fair, complaining is easy, action is hard.
https://github.com/opencontainers/image-spec/pull/1070


Mobile?

Can you guys make a mobile port?

this is the 3 person that asked for mobile,next person who ask for mobile i'm gonna say no

Oop ok


Remove deprecated Go modules

What does this PR do?
Removes modules deprecated by https://github.com/DataDog/datadog-agent/pull/11244
Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided if the qa/skip-qa label is not applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the config template has been updated.

@albertvaka I think it's user-facing in the sense that in theory somebody might have used these modules from a different Go project, couldn't they?


[CI] Benchmark calling the probe

Project with 6 benchmarks for firing the probe while not monitored
PR check that compares performance to the main branch (benchmark numbers seem to spread +-25% on the currently used non-dedicated CI agents)
Only NativeAOT 8.0 performance is measured. Regular .NET was seen to be slower during testing.
The benchmark can be run manually dotnet run --exporters json --filter '*' -c Release. I can also add a Makefile to simplify this command to make bench.
This action must run on the default branch in this repo at least once in order to cache the "reference" benchmark results and to enable benchmark comparisons for all PRs.

Next steps:

measure performance while probed by bpftrace. It must be significantly slower due to the 2 context switches from userspace to kernel and back.
benchmark against the builtin tracing tooling in dotnet.

Only NativeAOT 8.0 performance is measured. Regular .NET was seen to be slower during testing.

Why not publish both numbers?

The github action that publishes the performance diff with the main branch does not differentiate between the RuntimeMonikers. It would show two rows in the table with the test name Benchmark.UnobservedProbeFireBenchmarks.ArgCount2, and you wouldn't know which one is NativeAOT.
The table I linked above is one of the artifacts generated when running the benchmark. It has more metadata for the benchmark results, but it does not compare performance to the main branch.
Likely these issues can be resolved by a finer configuration of the pipeline, which I'll look into next.


Changed default value and added to index

Codecov Report

Merging #77 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #77   +/-   ##
=======================================
  Coverage   66.47%   66.47%
=======================================
  Files          21       21
  Lines        1187     1187
=======================================
  Hits          789      789
  Misses        358      358
  Partials       40       40

Impacted Files
Coverage Δ

db/batchDeleter/batchDeleter.go
87.8% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


MacOS Port

MacOS implementation for renv.
Mentioned in #59

Hey, @r614 ! The issue with Travis CI is with the python versions.
In the pyproject.toml, the python version should be bumped up to 3.5.
[tool.poetry.dependencies]
python = ">=3.4"
click = "^7.0"
pyyaml = "^3.12"
cookiecutter = "^1.6"

For the travis.yml file, python version 3.4 should be removed.
python:
  - 3.4
  - 3.5
  - 3.6

Hey @sdhutchins , just fixed it!

Ohh!  It's building :)

Nice job, @r614 !!!

Bump the project version in the poetry.toml file from 0.3.1 to 0.4.0

Updated!

Nice job @r614 :)

Thanks. :D


feat: Delete CNTKand related utils

Related Issues/PRs

#xxx
What changes are proposed in this pull request?
Remove CNTK and related classes.
How is this patch tested?

[ ] I have written tests (not required for typo or doc fix) and confirmed the proposed feature/bug-fix/change works.

Does this PR change any dependencies?

[ ] No. You can skip this section.
[x ] Yes. Make sure the dependencies are resolved correctly, and list changes here.
removes CNTK

Does this PR add a new feature? If so, have you added samples on website?

[ ] No. You can skip this section.
[ ] Yes. Make sure you have added samples following below steps.

Find the corresponding markdown file for your new feature in website/docs/documentation folder.
Make sure you choose the correct class estimators/transformers and namespace.
Follow the pattern in markdown file and add another section for your new API, including pyspark, scala (and .NET potentially) samples.
Make sure the DocTable points to correct API link.
Navigate to website folder, and run yarn run start to make sure the website renders correctly.
Don't forget to add <!--pytest-codeblocks:cont--> before each python code blocks to enable auto-tests for python samples.
Make sure the WebsiteSamplesTests job pass in the pipeline.

Acrolinx Scorecards
A minimum Acrolinx score of 80 is required.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology.

Article
Acrolinxscore
Word andPhrases Score
CorrectnessScore
Scorecard
Processed

website/docs/documentation/transformers/core/_Image.md

link
:warning:

More information about Acrolinx

Install Acrolinx locally for VSCode
False positives or issues
Troubleshooting issues with Acrolinx

/azp run

Codecov Report

Merging #1743 (842a513) into master (2d06b94) will decrease coverage by 9.27%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1743      +/-   ##
==========================================
- Coverage   85.85%   76.58%   -9.28%
==========================================
  Files         278      270       -8
  Lines       14608    14023     -585
  Branches      783      722      -61
==========================================
- Hits        12542    10739    -1803
- Misses       2066     3284    +1218

Impacted Files
Coverage Δ

...soft/azure/synapse/ml/cognitive/AudioStreams.scala
0.00% <0.00%> (-87.88%)
:arrow_down:

...ft/azure/synapse/ml/cognitive/AzureSearchAPI.scala
2.59% <0.00%> (-87.02%)
:arrow_down:

.../microsoft/azure/synapse/ml/param/ModelParam.scala
14.28% <0.00%> (-85.72%)
:arrow_down:

...soft/azure/synapse/ml/param/TransformerParam.scala
14.28% <0.00%> (-85.72%)
:arrow_down:

...ft/azure/synapse/ml/param/PipelineStageParam.scala
14.28% <0.00%> (-85.72%)
:arrow_down:

...t/azure/synapse/ml/param/EstimatorArrayParam.scala
7.14% <0.00%> (-85.72%)
:arrow_down:

...azure/synapse/ml/param/TransformerArrayParam.scala
7.69% <0.00%> (-84.62%)
:arrow_down:

...osoft/azure/synapse/ml/cognitive/AzureSearch.scala
9.35% <0.00%> (-78.42%)
:arrow_down:

...e/synapse/ml/cognitive/FormRecognizerSchemas.scala
7.69% <0.00%> (-76.93%)
:arrow_down:

...ure/synapse/ml/cognitive/FormOntologyLearner.scala
14.28% <0.00%> (-75.52%)
:arrow_down:

... and 50 more

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

Acrolinx Scorecards
A minimum Acrolinx score of 80 is required.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology.

Article
Acrolinxscore
Word andPhrases Score
CorrectnessScore
Scorecard
Processed

website/docs/documentation/transformers/core/_Image.md

link
:warning:

More information about Acrolinx

Install Acrolinx locally for VSCode
False positives or issues
Troubleshooting issues with Acrolinx

/azp run

Acrolinx Scorecards
A minimum Acrolinx score of 80 is required.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology.

Article
Acrolinxscore
Word andPhrases Score
CorrectnessScore
Scorecard
Processed

website/docs/documentation/transformers/core/_Image.md

link
:warning:

More information about Acrolinx

Install Acrolinx locally for VSCode
False positives or issues
Troubleshooting issues with Acrolinx

/azp run

Acrolinx Scorecards
A minimum Acrolinx score of 80 is required.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology.

Article
Acrolinxscore
Word andPhrases Score
CorrectnessScore
Scorecard
Processed

website/docs/documentation/transformers/core/_Image.md

link
:warning:

More information about Acrolinx

Install Acrolinx locally for VSCode
False positives or issues
Troubleshooting issues with Acrolinx

Acrolinx Scorecards
A minimum Acrolinx score of 80 is required.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology.

Article
Acrolinxscore
Word andPhrases Score
CorrectnessScore
Scorecard
Processed

website/docs/documentation/transformers/core/_Image.md

link
:warning:

More information about Acrolinx

Install Acrolinx locally for VSCode
False positives or issues
Troubleshooting issues with Acrolinx

/azp run

Acrolinx Scorecards
A minimum Acrolinx score of 80 is required.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology.

Article
Acrolinxscore
Word andPhrases Score
CorrectnessScore
Scorecard
Processed

website/docs/documentation/transformers/core/_Image.md

link
:warning:

More information about Acrolinx

Install Acrolinx locally for VSCode
False positives or issues
Troubleshooting issues with Acrolinx

/azp run

Acrolinx Scorecards
A minimum Acrolinx score of 80 is required.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology.

Article
Acrolinxscore
Word andPhrases Score
CorrectnessScore
Scorecard
Processed

website/docs/documentation/transformers/core/_Image.md

link
:warning:

More information about Acrolinx

Install Acrolinx locally for VSCode
False positives or issues
Troubleshooting issues with Acrolinx


Can't syle with CSS

I'm pretty sure I'm missing something, but I couldn't find anything in the docs. How would I apply CSS styles to an Img tag?

also struggling with this. I gather it's done with the help of the attributes prop, but I would appreciate at least one explicit example showing how to add classes to a <Picture> element

Somewhat late but for me this worked:
Let's say I want to add a rounded-md class to the resulting img element inside the Picture component. Then I would do:
<Picture attributes={{ img: { class: "rounded-md" } }} alt="" src={imgSrc} />

Source: https://astro-imagetools-docs.vercel.app/en/components/Picture#attributes

Thank you! That helps a ton!

Justed tested and it doesn't seem to work or be referenced as an option in the documentation:
declare interface Attributes {
  picture?: Record<any, any>;
  style?: Record<any, any>;
  link?: Omit<Record<any, any>, "as" | "rel" | "imagesizes" | "imagesrcset">;
  img?: Omit<
    Record<any, any>,
    | "src"
    | "alt"
    | "srcset"
    | "sizes"
    | "width"
    | "height"
    | "loading"
    | "decoding"
  >;
}

Could you share the code you are using? I am using right now exactly the code I shared

<Picture attributes={{ style: {class: "about-image"} }} alt="" src="/assets/profile-pic.webp" alt="Headshot of Kieran Klukas">
	<figcaption>Kieran x Stable Diffusion</figcaption>
</Picture>

Sorry, pasted the wrong snippet. Fixed it above.

I don't know what you are trying to modify (which CSS properties) with profile-pic but keep in mind the Picture component creates a <picture> element with an <img> element inside. The code img: { class: "profile-pic" } is adding that class to the img component (you should see it in the dev tools) but you might want to apply that CSS to the picture component itself. In that case, you should use picture: { class: "profile-pic" }

Thanks, I tried a bunch of things to try and get it to style, but it didn't work. I'm closing this for now as it doesn't seem to be an issue with the code but rather user error on my part.

I've also tried this several times, and I too, can't get it to work.
                   <Picture  src={gscPosts[1].jetpack_featured_media_url} attributes={{ img: { class: "blog__thumbnail" } }} alt={gscPosts[1].title.rendered} />
This should pass the class="blog__thumbnail" to the img take correct?


Allow parsing YAML documents (and streams) like we do with the "from-json" function

Today it's possible to parse JSON in Elvish using the builtin from-json function. It would be helpful if we could also load YAML documents with an analogous from-yaml function. As people often write multiple YAML documents together in a single YAML stream, it would also be helpful to be able to load a YAML stream that would yield any number of documents (perhaps with a function called from-yaml-stream).
I understand that doing so would require introducing a dependency on a YAML parsing library. Whether we should provide functions to create a YAML document like to-json is debatable. Jsonnet's manifestYamlDoc function in its standard library has been controversial for the way it quotes strings in mapping keys.

Note that the project already depends on https://github.com/BurntSushi/toml for generating the blog web pages. While the project doesn't use that package in the elvish program the dependency does set a precedence of sorts.
@seh, Your opening comment doesn't appear to provide a real-world, concrete example showing why an Elvish program would employ this capability. Was there a problem you recently dealt with that would have benefited from a shell (Elvish or otherwise) being able to read YAML and convert it to the shell's native data structures?

Was there a problem you recently dealt with that would have benefited from a shell (Elvish or otherwise) being able to read YAML and convert it to the shell's native data structures?

Yes, I frequently write small programs using bash or zsh that inspect Kubernetes manifests and some of the configuration files that go with them, such as the manifests the kops tool consumes. Some of these are static files, and some are the output of tools like helm template, kustomize build, or cue eval --out=yaml.
We have jq to handle our JSON needs for cases when the tool (e.g. kubectl get --output=jsonpath or aws --query) can't_ get us far enough. YAML processing tools are harder to come by; some just convert the YAML to JSON and send it through jq. It's possible to write small Python or Ruby programs do it, approaching one-liners, but then we're edging into just writing the whole program in that language.
When I saw that Elvish offers from-json, I immediately took note, thinking that this is more than just job control language, but could be a "real" programming language. I could use an external tool to convert YAML to JSON and then use Elvish's from-json function, but I'm left to wonder why we have this built-in way to consume JSON. If there were external, optional packages each dedicated to these separate languages (JSON, YAML, TOML, etc.), we wouldn't be propping any one of them higher than another.

what's the benefit (excluding performance) of working directly on yaml instead of using a streaming yaml2json converter?:
fn from-yaml []{ yaml2json | from-json }

As I wrote above:

I could use an external tool to convert YAML to JSON and then use Elvish's from-json function, but I'm left to wonder why we have this built-in way to consume JSON.

I'd rather not introduce any more tools on which to depend, such as yaml2json. Doing so imposes more installation requirements for my team. Rather, I was hoping to reduce the number of tools I'd need—as was once the dream with Perl.

ah ok, i was wondering if there was another reason.
well whether integrating it directly or as plugin would certainly be nice to have such functions out-of-the-box
just stumbled on yj and will settle with this for now:
fn from-yaml []{ yj -yj | from-json }
fn from-toml []{ yj -tj | from-json }
fn from-hcl []{ yj -cj | from-json }
fn to-yaml []{ to-json | yj -jy }
fn to-toml []{ to-json | yj -jt }
fn to-hcl []{ to-json | yj -jc }

I think this will actually be great if implemented. We handle quite a lot of yaml. But as far as I know there's no scripting language that natively supports yaml and also yq implementations out there does not seem to be stable like jq. If elvish can handle all kinds of this, I can just install elvish and handle all in elvish scripts (especially in containerized environment).


u-boot unable to read uboot.env

I'm using the kirkstone branch and want to start the a Raspberry 4 b with u-boot bootloader.
I bitbake an image with:
bitbake -k core-image-full-cmdline
But the system is not starting while I get the following message in the serial console:
-Boot 2022.01 (Jan 10 2022 - 18:46:34 +0000)

DRAM:  3.9 GiB
RPI 4 Model B (0xc03111)
MMC:   mmcnr@7e300000: 1, mmc@7e340000: 0
Loading Environment from FAT... Unable to read "uboot.env" from mmc0:1... In:    serial
Out:   serial
Err:   serial
Net:   eth0: ethernet@7d580000
PCIe BRCM: link up, 5.0 Gbps x1 (SSC)
starting USB...
Bus xhci_pci: Register 5000420 NbrPorts 5
Starting the controller
USB XHCI 1.00
scanning bus xhci_pci for devices... 3 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot:  0
U-Boot>

local.conf settings:
MACHINE ??= "raspberrypi4-64"

IMAGE_FSTYPES = "ext4 rpi-sdimg"
SDIMG_ROOTFS_TYPE = "ext4"

KERNEL_IMAGETYPE = "Image"

PREFERRED_VERSION_linux-raspberrypi = "5.15.%"

## enable some hardware
VC4DTBO ?= "vc4-fkms-v3d"
DISABLE_OVERSCAN = "1"
SERIAL_CONSOLES = "115200;ttyS0"

# I2C
ENABLE_I2C = "1"
KERNEL_MODULE_AUTOLOAD:rpi += "i2c-dev i2c-bcm2708"

# UART
ENABLE_UART = "1"

## enable uboot
RPI_USE_U_BOOT = "1"
#PREFERRED_PROVIDER:virtual/bootloader = "u-boot"

## enable video camera
RASPBERRYPI_CAMERA_V2 = "1"

# for no root passwd uncomment the following and comment the two extra user lines
EXTRA_IMAGE_FEATURES = "debug-tweaks"

RM_OLD_IMAGE = "1"
#INHERIT += "rm_work"

I've also tried other images I can't get a running system with u-boot.

It sounds like we are missing rpi-u-boot-scr in your build/image. Could you try to see if it got compiled/deployed?

rpi-u-boot-scr was not pulled in the build?

No there is no file * rpi-u-boot-scr* in the directory /rpi4-64-uboot/tmp/work/raspberrypi4_64-poky-linux/u-boot/1_2022.01-r0/build, /rpi4-64-uboot/tmp/work/raspberrypi4_64-poky-linux/u-boot/1_2022.01-r0/deploy-u-boot and in /rpi4-64-uboot/tmp/deploy/images/raspberrypi4-64.
But in the log files I found the following:
log/cooker/raspberrypi4-64/20220622114225.log:NOTE: recipe rpi-u-boot-scr-1.0-r0: task do_install: Started
log/cooker/raspberrypi4-64/20220622114225.log:NOTE: recipe rpi-u-boot-scr-1.0-r0: task do_install: Succeeded
log/cooker/raspberrypi4-64/20220622114225.log:NOTE: Running task 3096 of 3154 (/workdir/poky-kirkstone/meta-raspberrypi/recipes-bsp/rpi-u-boot-scr/rpi-u-boot-scr.bb:do_populate_sysroot)
log/cooker/raspberrypi4-64/20220622114225.log:NOTE: recipe rpi-u-boot-scr-1.0-r0: task do_populate_sysroot: Started
log/cooker/raspberrypi4-64/20220622114225.log:NOTE: recipe rpi-u-boot-scr-1.0-r0: task do_populate_sysroot: Succeeded
log/cooker/raspberrypi4-64/20220622114225.log:NOTE: Task /workdir/poky-kirkstone/meta-raspberrypi/recipes-bsp/rpi-u-boot-scr/rpi-u-boot-scr.bb:do_populate_sysroot unihash changed to 8d82e49aedd0674590fcaf40075c342ec1f18e0ac2b456f79b8bcd1da8e5b77d

Can you check with core-image-base? I just saw that you are using the cmdline one and I can't remember what that was pulling in.

Sorry for the late reply. Now I found time to test with core-image-base.
I can confirm, that with this image u-boot starts the system correct.


Add script for extracting constants from RPM source files

Fixes #175.

I've updated the script so the commands are importable and added the GH action.

Here is a resulting PR: https://github.com/packit/specfile/pull/203

Here is a final PR created by a manual workflow run: https://github.com/packit/specfile/pull/204


cannot parse Lee Ann Womack

Lee Ann Womack is an American country music singer and songwriter
https://en.wikipedia.org/wiki/Lee_Ann_Womack

Merged into #42.


New genome groups not showing up in Protein Family Sorter-need this to work before ASM workshop

I have created some new groups, and can see them in my workspace, but when I look for them in the PFS, they are not there.  They aren't in the Comparative Pathway tool either.  I need this to be functional before the ASM Microbe workshop.

I cannot reproduce this issue. I can see my test genome group (created to test save as genome group from pathway tab). it took some time though.

I guess this issue no longer exists.


Fix unwanted autosync on recipients save

Fixes #793

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@b6fa4a8). Click here to learn what that means.
The diff coverage is 0%.

@@            Coverage Diff            @@
##             master     #848   +/-   ##
=========================================
  Coverage          ?   64.18%
=========================================
  Files             ?      170
  Lines             ?     9669
  Branches          ?        0
=========================================
  Hits              ?     6206
  Misses            ?     2693
  Partials          ?      770

Impacted Files
Coverage Δ

pkg/store/sub/write.go
33.33% <ø> (ø)

pkg/store/sub/move.go
63.64% <ø> (ø)

pkg/store/sub/recipients.go
55.03% <0%> (ø)

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 b6fa4a8...08282bf. Read the comment docs.


filetree.h: No such file or directory

Hi,
I just did:
git clone https://github.com/jiixyj/libebur128.git
taking care of all dependencies on Ubuntu 11.04 and following install instructions from README file
on make I stuck here:
...
Scanning dependencies of target loudness
[ 43%] Building C object scanner/CMakeFiles/loudness.dir/scanner.c.o
/src/libebur128/scanner/scanner.c:11:22: fatal error: filetree.h: No such file or directory
compilation terminated.
make[2]: *** [scanner/CMakeFiles/loudness.dir/scanner.c.o] Error 1
make[1]: *** [scanner/CMakeFiles/loudness.dir/all] Error 2
make: *** [all] Error 2

It seems like this file should be in scanner folder or maybe not?

Hi,
after clone run
git submodule update```
in the root folder. I should probably add this to the README.

It's there :) thanks
and thanks for this tool ;)


feat: use dynamicValueUtil in other editor js tools

Use dynamicValueUtil in render functions of the editorjs widgets we want to use

Was not possible straight like this because we can't just copy their code and reuse it. They use different technologies for their widgets and therefore we need to compile their widgets as extra modules. But that way they are not able to use our data service to fetch the data.
Either you can try to redesign our whole project so that the data connection is a whole separate module that is used by the widgets and the generator UI at the same time or you can reimplement the editorJS parts.


Iron Hoppers Uncraftable

That is weird. I did not remove the hopper recipe. Can you at least craft a tin one?

I can

This should be fixed.


Update post-lecture-quiz.md

Hello, please fork this repo and add your own answers on your copy, thank you


JBDS-4305 add rhel.subscription.username to .minishift/cdk

Codecov Report

Merging #635 into master will increase coverage by 0.42%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #635      +/-   ##
==========================================
+ Coverage    91.9%   92.33%   +0.42%
==========================================
  Files          28       28
  Lines        2532     2674     +142
  Branches      224      224
==========================================
+ Hits         2327     2469     +142
  Misses        205      205

Impacted Files
Coverage Δ

browser/model/cdk.js
98.97% <100%> (+0.14%)
:arrow_up:

browser/services/platform.js
86.39% <0%> (-0.38%)
:arrow_down:

browser/pages/install/controller.js
100% <0%> (ø)
:arrow_up:

browser/services/request.js
100% <0%> (ø)
:arrow_up:

browser/model/helpers/hash.js
100% <0%> (ø)
:arrow_up:

browser/model/helpers/version.js
100% <0%> (ø)
:arrow_up:

browser/model/jdk-install.js
100% <0%> (ø)
:arrow_up:

browser/model/helpers/installer.js
100% <0%> (ø)
:arrow_up:

browser/pages/start/controller.js
100% <0%> (ø)
:arrow_up:

browser/model/hyperv.js
100% <0%> (ø)
:arrow_up:

... and 16 more

Continue to review full report at Codecov.

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


ARROW-13135: [C++] Fix Status propagation from Parquet exception

Rebased to fix conflicts, will merge if CI green.

CI failures are unrelated.


Add option to install full kube-prometheus-stack

If the user has an external control plane for Grafana then not the entire kube-prometheus stack needs to be installed in the cluster.
Ask the user if they want the full stack or not

This can be closed since it is already included in ArgoCD


perl5 package is broken (perl-5.22.1-1-x86_64)

The package of perl5 is broken. In tar there are symlinks that can not be created o win. To do a basic fix the symlink for the perl5-dll has to be manualy created :
ln -s /usr/lib/perl5/core_perl/CORE/msys-perl5_22.dll /usr/bin/msys-perl5_22.dll

There is another problem in the perl-package. in file /usr/share/perl5/core_perl/file/path.pm line 34 the check for Need_Stat_Check is incomplete because $^O on msys is msys.
line 34 should be 'my $Need_Stat_Check = !(($^O eq 'MSWin32') or ($^O eq 'msys'));'

I wonder if the current 5.22.0 version of perl should be upgraded to 5.24.0 or perhaps, 5.22.2.  Ideally, we would probably want the newest version because sometimes, modules aren't updated for flawed older versions causing bitrot.
I did notice some problems with perl and Perl:LIbXML in mingw64 that would cause me problems compiling gnome stuff.

It may also be useful to submit some of the patches required for msys to p5p so that msys2 can become a platform supported by Perl.  I think that msys2 perl in some ways has the potential to be much better more viable for Perl development on windows than Strawberry, but the lack of awareness in the Perl community means that many CPAN modules do not work correctly.  Many of these modules need only to check for $^O eq 'msys' in addition to 'MSWin32', but the lack of awareness makes CPAN difficult to use under msys2.

Note there is an issue related to newer versions also https://github.com/msys2/MSYS2-packages/issues/1611


what is the best practice to call hooks in react native from hooks

hi !
iam a fan of this project.
now i am using this project into my company's main project.
i think this project has a potential power.
I Love it.
I want to call a hook from web to rn web by this package.
i want to know what is the best practice
Can you explain Some?
i hope many people love this project

Hi. Thank you so much for the great review. It encourages me to maintain this library. 🥹🥹🥰
Are you looking to use this as a hook for implementing a web method in React Native? If so, I'd appreciate more details about your specific scenario.
Or, are you considering using it as a hook in a web environment (React), while utilizing React Native methods?
And the common thread in both is that i want to understand why you need a hook.
I think the use cases that require hooks are related to state integration or method export.
For state integration: We would use a getter to obtain the raw value. However, this approach isn't very reactive. Periodically calling the method to retrieve the value is necessary, and utilizing @tanstack/query for management seems to be a suitable solution.
For method exporting: It's possible to export your WebMethod or nativeMethod without using a hook, allowing usage in any context independent of the React lifecycle.
When I designed it, I designed it not to depend on the framework, so I would say just use it.
But I think there are some scenarios that I don't know.
If there's a better way, I would consider integrating something.
So I need a more specific scenario🙏. Thanks

Thank you for your fast replying,
My specific scenarios are here,

click a button in web, to open the modal in the react native app.
get the text which is dynamically changing in the web input tag and show it in Text tag in react-native.

Thanks for sharing your scenarios.
I'm thinking of a good solution for scenario #1 and will prepare it as soon as possible.
For example, useAppBridgeSubscriber(appBridge, (returnValue) => void) ?
I'm still thinking about this one.
As a solution for scenario #2, I am considering a reactive approach that is integrated into certain frameworks, such as @webview-bridge/react and @webview-bridge/vue.
I'll prepare this as well.

hey @doyoonkim12345 , I've been busy and it takes time to prepare new features 😂 .
But I think the scenario you described can be solved with global state.
Below is an example using jotai.
React Native Part
import { atom, useAtomValue, getDefaultStore } from "jotai";

const textAtom = atom("");
const defaultStore = getDefaultStore();

export const appBridge = bridge({
  async setText(value: string) {
    defaultStore.set(textAtom, value);
  },
});

function ReactNativeComponent() {
  const text = useAtomValue(textAtom);

  return <Text>{text}</Text>;
}

Web Part
function WebComponent() {
  const [text, setText] = useState("");

  return (
    <input
      value={text}
      onChange={(e) => {
        setText(e.target.value);
        nativeMethod.setAtom(e.target.value);
      }}
    />
  );
}

oh I see. you are in hard work.
it doesnt seem that the way React wants. because get / set state outside of the hook / components.
but it can be used.
thank you for telling me the good way.
i am going to use this way first, after your development is completed, i will migrate from this way.
thanks.

In v1.3.1 introduced the shared state feature !🥰
I can confirm that both of the scenarios you suggested will work.
Please check the documentation and examples.
Docs:
https://gronxb.github.io/webview-bridge/shared-state/react-native.html
Example:
https://github.com/gronxb/webview-bridge/tree/main/example/shared-state-integration-react

wow amazing that's what i want.
after i looked this new feature, i updated the both of packages. if occurs a error.
if changed the method linkNativeMethod => linkBridge , then the webview only show the white screen.
now iam Searching for reason why.
thank you for your work.
i am going to check out specific reason it doesn't work and then re comment.
thank you.

If you create a simple reproduction repository, I can help expedite the process.

hi i am sorry to make you waiting my reply.
i was trying to create reproduction. but i cannot make the same problem on reproduction.
i removed every nodemodules in monorepo and reinstall them.
and the it works well.
thank you

Is this completely resolved?


fix(config): resolve implicit deps as absolute path

Description
fix #9202, revert #9140
Additional context

What is the purpose of this pull request?

[x] Bug fix
[ ] New Feature
[ ] Documentation update
[ ] Other

Before submitting the PR, please make sure you do the following

[ ] Read the Contributing Guidelines.
[ ] Read the Pull Request Guidelines and follow the Commit Convention.
[ ] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[ ] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[ ] Ideally, include relevant tests that fail without this PR but pass with it.

I need this to fix vite-node in Histoire :pray:

Nice fix @bluwy!


Api update

Issue Number
#408
Overview of PR
Added argument to the API calls to provide more complete information.
All arguments added to end so should not be a breaking change
Don't forget to update the CHANGELOG.md file with any changes that are in this PR

@acemac would you like to be added as a maintainer of this repo?

@mcMickJuice I'm happy to, but I may not stick around to help maintain other than keeping the typescript definitions up to date at DefinitelyTyped
We're using this internally for a project that ends next year. In future sprints I will include fixing #401 and will do #338 if we have performance issues. #332 / #390  may get finished by us if we have to.

Fair enough dude! Your contributions are greatly appreciated either way.

I've changed how moveResizeValidator works to allow for modifying of the group. Previously it return a number, it now returns:
number | { time: number, newGroupIndex: number }
By returning the object, the time variable is treated how the existing return was, and the newGroupIndex changes the group index of the return is used to set the group index.
I'm not in love with this as a solution because the index is a bad way to go about it. But I need it currently.

@acemac this will be released in 0.22.0 during the next two weeks thank you for your work

I am gonna push this to the next release because I want to get #401 without huge breaking changes

Hey ya, just wondering if there is anything I can help with to make progress on this PR? :-) Would be great to add some tests as well.

@tobiasbueschel
yes we need some help on this.

resolve conflict
add tests
I would appreciate the help


⚠ Carbubu has degraded performance

In dff5271, Carbubu (https://carbubu.fr) experienced degraded performance:

HTTP code: 200
Response time: 9614 ms

Resolved: Carbubu performance has improved in 6bed8de.


Undefined __min macro

#27

No need for rename. Just undefined the windows macro.

this seems reasonable