Issue starting rootless container with systemd

Is this a BUG REPORT or FEATURE REQUEST? (leave only one on its own line)
/kind bug
Description
When attempting to control autostart of a rootless container with systemd, it errors out with a message of
error creating libpod runtime: database libpod temporary files directory (tmpdir) \"/run/user/1000/run\" does not match our libpod temporary files directory (tmpdir) \"/var/run/libpod\": database  configuration mismatch"
Steps to reproduce the issue:

Create a rootless container

podman generate systemd container > /lib/systemd/system/pod-container.service

sudo systemctl start pod-container.service

Describe the results you received:
Service fails to start.
systemctl_status.txt
journalctl.txt
Describe the results you expected:
The container should start normally
Additional information you deem important (e.g. issue happens only occasionally):
Output of podman version:
Version:            1.9.1
RemoteAPI Version:  1
Go Version:         go1.14.2
OS/Arch:            linux/amd64

Output of podman info --debug:
debug:
  compiler: gc
  gitCommit: ""
  goVersion: go1.14.2
  podmanVersion: 1.9.1
host:
  arch: amd64
  buildahVersion: 1.14.8
  cgroupVersion: v2
  conmon:
    package: conmon-2.0.15-1.fc32.x86_64
    path: /usr/bin/conmon
    version: 'conmon version 2.0.15, commit: 33da5ef83bf2abc7965fc37980a49d02fdb71826'
  cpus: 24
  distribution:
    distribution: fedora
    version: "32"
  eventLogger: file
  hostname: Dewey.netriscs.com
  idMappings:
    gidmap:
    - container_id: 0
      host_id: 1000
      size: 1
    - container_id: 1
      host_id: 100000
      size: 65536
    uidmap:
    - container_id: 0
      host_id: 1000
      size: 1
    - container_id: 1
      host_id: 100000
      size: 65536
  kernel: 5.6.13-300.fc32.x86_64
  memFree: 870588416
  memTotal:<PHONE_NUMBER>6
  ociRuntime:
    name: crun
    package: crun-0.13-2.fc32.x86_64
    path: /usr/bin/crun
    version: |-
      crun version 0.13
      commit: e79e4de4ac16da0ce48777afb72c6241de870525
      spec: 1.0.0
      +SYSTEMD +SELINUX +APPARMOR +CAP +SECCOMP +EBPF +YAJL
  os: linux
  rootless: true
  slirp4netns:
    executable: /usr/bin/slirp4netns
    package: slirp4netns-1.0.0-1.fc32.x86_64
    version: |-
      slirp4netns version 1.0.0
      commit: a3be729152a33e692cd28b52f664defbf2e7810a
      libslirp: 4.2.0
  swapFree:<PHONE_NUMBER>0
  swapTotal:<PHONE_NUMBER>2
  uptime: 52h 14m 42.65s (Approximately 2.17 days)
registries:
  search:
  - registry.fedoraproject.org
  - registry.access.redhat.com
  - registry.centos.org
  - docker.io
store:
  configFile: /home/user/.config/containers/storage.conf
  containerStore:
    number: 7
    paused: 0
    running: 5
    stopped: 2
  graphDriverName: overlay
  graphOptions:
    overlay.mount_program:
      Executable: /usr/bin/fuse-overlayfs
      Package: fuse-overlayfs-1.0.0-1.fc32.x86_64
      Version: |-
        fusermount3 version: 3.9.1
        fuse-overlayfs: version 1.0.0
        FUSE library version 3.9.1
        using FUSE kernel interface version 7.31
  graphRoot: /home/user/.local/share/containers/storage
  graphStatus:
    Backing Filesystem: xfs
    Native Overlay Diff: "false"
    Supports d_type: "true"
    Using metacopy: "false"
  imageStore:
    number: 7
  runRoot: /run/user/1000/containers
  volumePath: /home/user/.local/share/containers/storage/volumes

Package info (e.g. output of rpm -q podman or apt list podman):
podman-1.9.1-1.fc32.x86_64

Additional environment details (AWS, VirtualBox, physical, etc.):
Physical Server Running Fedora 32

Can you upgrade to Podman v1.9.2 or higher and re-try? We've already fixed this one.
I don't know if v1.9.2 every made it to stable in Fedora, but v1.9.3 should be in updates-testing - dnf --enablerepo=updates-testing upgrade podman should grab it.

Sorry for not replying Immediately, but this is NOT resolved.
I tried with Podman 1.9.2, same issue, then I upgraded to the testing 1.9.3, and the issue still persists. Please re-open.

It does seem to be throwing a different error now though:
Error: unable to find container 952a8f7a8a602a83ca192c4a608da95412e5a9f6ff4c5571bfed5fe2d410ff6b: no container with name or ID 952a8f7a8a602a83ca192c4a608da95412e5a9f6ff4c5571bfed5fe2d410ff6b found: no such container

Root cannot see rootless containers as the storage paths differ. When running rootless containers via systemd, the unit files must be installed at the correct path (see https://github.com/containers/libpod/blob/master/docs/source/markdown/podman-generate-systemd.1.md#installation-of-generated-systemd-unit-files) and be started via systemctl **--user**.

Root cannot see rootless containers as the storage paths differ. When running rootless containers via systemd, the unit files must be installed at the correct path (see https://github.com/containers/libpod/blob/master/docs/source/markdown/podman-generate-systemd.1.md#installation-of-generated-systemd-unit-files) and be started via systemctl **--user**.

The link your reference seems to contradict your statement.
Note: Coping unit files to /usr/lib/systemd/system and enabling it marks the unit file to be automatically started at boot. And smillarly, coping a unit file to $HOME/.config/systemd/user and enabling it marks the unit file to be automatically started on user login
I need these containers to start at boot, so I place the config in the appropriate path. How else am I supposed to securely start non root containers at boot?

The problem in your specific example is:

podman generate systemd container > /lib/systemd/system/pod-container.service

The generated .service file starts an existing container which is in the rootless storage. Hence, you cannot use it as another user (even root) which ultimately leads to

Error: unable to find container 952a8f7a8a602a83ca192c4a608da95412e5a9f6ff4c5571bfed5fe2d410ff6b: no container with name or ID 952a8f7a8a602a83ca192c4a608da95412e5a9f6ff4c5571bfed5fe2d410ff6b found: no such container

... as root container storage does not know this container.
Running rootless container in system (i.e., root) services can be done by user the User/Group=... attributes of systemd. An example can be found in the following issue: https://github.com/containers/libpod/issues/5572#issuecomment-626727010
However, there are many things that could go wrong and we don't yet officially support it. But we're working together with the systemd folks to find a solution.

I recommend using podman generate systemd --new which will generate services that create new container in contrast to the default services which start existing containers.

Will the  podman generate systemd --new generated file in /lib/systemd start as root or as user? The whole point is to run the containers as non-root.
I will try your other suggestion of supplying the user/group to the systemd file. Maybe this should be reopened as a feature enhancment then? Surely I'm not the only one who would like to see rootless containers auto start at boot up.

Will the podman generate systemd --new generated file in /lib/systemd start as root or as user? The whole point is to run the containers as non-root.

They will start with all users. But note that you want to run rootless containers as root (via a root system service).

I will try your other suggestion of supplying the user/group to the systemd file.

Please note that we don't support that yet (see #5572).

Maybe this should be reopened as a feature enhancment then? Surely I'm not the only one who would like to see rootless containers auto start at boot up.

This is already supported. You need to enable lingering (# loginctl enable-linger username) for your user and enable the non-root service via $ systemctl --user $service.

Systemctl - - user $service does NOT enable them at boot, it only enables them at login. Since this is a server, if there happens to be A failure where it needs to reboot, they will not start until the user logs in. So it appears to not be supported yet.

Again. Your scenario is supported but you need to enable lingering for your user. I just created a clean Fedora 32 VM and did the following steps:

Create a .service file and copy it to $USER/.config/systemd/user.
Load and enable the service via systemctl --user ...
Enable lingering via: # loginctl enable-linger username
Reboot the system.
Login as root (not as the user) and check if the service is running (and it is running).

Step 3 is the crucial part of getting the services to start at boot (even for non root users).

Sorry for dragging this out. I kept getting confused by the constant statement that it wasn't supported. (And it was early)


LogicSchema#getDataSources unit test

first time try to add unit test and create a pull request.
Changes proposed in this pull request:

add unit test for LogicSchema#getDataSources method.

Pull Request Test Coverage Report for Build 469

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.01%) to 65.79%

Totals

Change from base Build 425:
0.01%

Covered Lines:
9754

Relevant Lines:
14826

💛  - Coveralls

@kezhenxu94 The getter method should not add unit test. But for this method, it is not only a getter method, it has some business logic which is use backendDataSource.getDataSourceParameters(), so for my understanding, add test case and mock backendDataSource is fine.
We can merge it after fix change requested, because it will increase test coverage and not break any thing.

Sorry, I see it carefully, it have a problem. This case is tesing LogicSchema which you are mocked, it is not a good practice.
You may add a test fixture extends LogicSchema, and make the test fixture as actual object which you need to test.

the original code has changed a lot and unit test coverage is ok, so this pr closed


draw_multiline_string() is drawing on a wrong position

Godot version
4.0.rc5
System information
Windows 10
Issue description
When I draw a text on the Control node in _draw() method. The vertical position of the text is not positioned at the right offset. e.g Vector(0, 0) will draw the text about 12 pixels above, so Vector2(0, 0) will became Vector2(0, -12), that's just my approximation. I can't describe the problem well, but I have an reproduction project below and a minimal example.
Steps to reproduce
extends Control

var font: FontFile = preload("res://NotoSans_Regular.ttf")

func _draw():
	draw_multiline_string(
		font,
		Vector2(0, 0),
		"Hello world",
		HORIZONTAL_ALIGNMENT_LEFT,
		80,
		12, # font size
		-1,
		Color.WHITE,
		TextServer.BREAK_GRAPHEME_BOUND,
	)

In the example above, I just put the script on a plain Control node. The text is not shown at this point (that's the problem), but if you change the text to something like, "you good?", you will see that the letter "y" and "g" is shown a bit.
Minimal reproduction project
gd_bug_test1.zip

Why close?

The origin of all string draw functions is baseline of the first line, not a top of the bounding box.
Unrelated note: usually it's a good idea to always have BREAK_MANDATORY as a part of break flags, like: TextServer.BREAK_GRAPHEME_BOUND | TextServer.BREAK_MANDATORY otherwise this function will fail is you have any line break characters in the text (e.g., \n).


Some events cannot be parsed after upgrading to 4.0.1

Hello,
I have been using 3.0.15 version for some time and it was able to parse a calendar from stream just fine. Anyhow, after upgrading to the most recent 4.0.1 version, parsing of the same calendar is failing on some specific event:
System.Runtime.Serialization.SerializationException: Could not parse line: 'DESCRIPTION:aaa aaaaa:\n   aaaaa aaaa aaaaa aaaaaaa (aaaaa\, aaaa\, aaaaa\, TP) aaa aaa aaaaa aaaa\;\n        aaa aaaaa aaaa aaaa aaaa aaaaa aaaaaa aaaaaa (aa aaaaaa\, aaaaaaa)\;\n    aaaaa aaaaaa aaa aaa aaaaa aaaaaa aa\, aaaaaa aaaaaa\, aaa.\;\n\naaaa aaaa aaaaa aaa aa aaa aaa aaaaa aaaaaa aa aaa aaaa aaaaa`a aaaaa aaa. '
   at CalendarProperty Ical.Net.Serialization.SimpleDeserializer.ParseContentLine(SerializationContext context, string input) in C:\git\ical.net\net-core\Ical.Net\Ical.Net\Serialization\SimpleDeserializer.cs:line 126
   at IEnumerable<ICalendarComponent> Ical.Net.Serialization.SimpleDeserializer.Deserialize(TextReader reader)+MoveNext() in C:\git\ical.net\net-core\Ical.Net\Ical.Net\Serialization\SimpleDeserializer.cs:line 78
   at IEnumerable<TResult> System.Linq.Enumerable.OfTypeIterator<TResult>(IEnumerable source)+MoveNext()
   at void System.Collections.Generic.List<T>.AddEnumerable(IEnumerable<T> enumerable)
   at void System.Collections.Generic.List<T>.InsertRange(int index, IEnumerable<T> collection)
   at CalendarCollection Ical.Net.CalendarCollection.Load(TextReader tr) in C:\git\ical.net\net-core\Ical.Net\Ical.Net\CalendarCollection.cs:line 34
   at Calendar Ical.Net.Calendar.Load(TextReader tr) in C:\git\ical.net\net-core\Ical.Net\Ical.Net\Calendar.cs:line 29
   at void PROJECT.Components.MaintenancesComponent+<>c__DisplayClass4_0+<<InvokeAsync>b__0>d.MoveNext() in C:\PATH\PROJECT\src\Components\MaintenancesComponent.cs:line 69
   at void Polly.Policy+<>c__DisplayClass152_0<TResult>+<<ExecuteAsync>b__0>d.MoveNext() in C:\projects\polly\src\Polly.Shared\PolicyAsync.cs
   at void Polly.RetrySyntaxAsync+<>c__DisplayClass21_0+<<WaitAndRetryAsync>b__1>d.MoveNext() in C:\projects\polly\src\Polly.Shared\Retry\RetrySyntaxAsync.cs:line 467
   at async Task<TResult> Polly.Retry.RetryEngine.ImplementationAsync<TResult>(Func<Context, CancellationToken, Task<TResult>> action, Context context, CancellationToken cancellationToken, IEnumerable<ExceptionPredicate> shouldRetryExceptionPredicates, IEnumerable<ResultPredicate<TResult>> shouldRetryResultPredicates, Func<IRetryPolicyState<TResult>> policyStateFactory, bool continueOnCapturedContext) in C:\projects\polly\src\Polly.Shared\Retry\RetryEngineAsync.cs:line 31
   at async Task<TResult> Polly.Retry.RetryEngine.ImplementationAsync<TResult>(Func<Context, CancellationToken, Task<TResult>> action, Context context, CancellationToken cancellationToken, IEnumerable<ExceptionPredicate> shouldRetryExceptionPredicates, IEnumerable<ResultPredicate<TResult>> shouldRetryResultPredicates, Func<IRetryPolicyState<TResult>> policyStateFactory, bool continueOnCapturedContext) in C:\projects\polly\src\Polly.Shared\Retry\RetryEngineAsync.cs:line 27
   at async Task<TResult> Polly.Policy.ExecuteAsync<TResult>(Func<Context, CancellationToken, Task<TResult>> action, Context context, CancellationToken cancellationToken, bool continueOnCapturedContext) in C:\projects\polly\src\Polly.Shared\PolicyAsync.cs:line 557
   at void Polly.Wrap.PolicyWrapEngine+<>c__DisplayClass8_0<TResult>+<<ImplementationAsync>b__0>d.MoveNext() in C:\projects\polly\src\Polly.Shared\Wrap\PolicyWrapEngineAsync.cs
   at async Task<TResult> Polly.Caching.CacheEngine.ImplementationAsync<TResult>(IAsyncCacheProvider<TResult> cacheProvider, ITtlStrategy ttlStrategy, Func<Context, string> cacheKeyStrategy, Func<Context, CancellationToken, Task<TResult>> action, Context context, CancellationToken cancellationToken, bool continueOnCapturedContext, Action<Context, string> onCacheGet, Action<Context, string> onCacheMiss, Action<Context, string> onCachePut, Action<Context, string, Exception> onCacheGetError, Action<Context, string, Exception> onCachePutError) in C:\projects\polly\src\Polly.Shared\Caching\CacheEngineAsync.cs
   at async Task<TResult> Polly.Wrap.PolicyWrapEngine.ImplementationAsync<TResult>(Func<Context, CancellationToken, Task<TResult>> func, Context context, CancellationToken cancellationToken, bool continueOnCapturedContext, Policy outerPolicy, Policy innerPolicy) in C:\projects\polly\src\Polly.Shared\Wrap\PolicyWrapEngineAsync.cs
   at async Task<IViewComponentResult> PROJECT.Components.MaintenancesComponent.InvokeAsync() in C:\PATH\PROJECT\src\Components\MaintenancesComponent.cs:line 59

The stack trace include the line it it seems to be failing on, but I have replaced the actual text with a letters, leaving all the formatting and symbols as is.
I would guess it has something to do with the large number of new lines or the apostrophe symbol.
Reverting back to 3.0.15 version solves the issue.
Thanks in advance.

In the future, could you provide the full ics text?

I can't repro your problem:
public void TestDescription()
{
    const string testCase = @"BEGIN:VCALENDAR
PRODID:-//github.com/rianjs/ical.net//NONSGML ical.net 4.0//EN
VERSION:4.0
BEGIN:VEVENT
DTEND:20171117T114135
DTSTAMP:20171117T154135Z
DTSTART:20171117T104135
DESCRIPTION:aaa aaaaa:\n   aaaaa aaaa aaaaa aaaaaaa (aaaaa\, aaaa\, aaaaa\, TP) aaa aaa aaaaa aaaa\;\n        aaa aaaaa aaaa aaaa aaaa aaaaa aaaaaa aaaaaa (aa aaaaaa\, aaaaaaa)\;\n    aaaaa aaaaaa aaa aaa aaaaa aaaaaa aa\, aaaaaa aaaaaa\, aaa.\;\n\naaaa aaaa aaaaa aaa aa aaa aaa aaaaa aaaaaa aa aaa aaaa aaaaa`a aaaaa aaa.
SEQUENCE:0
UID:46ee3437-cb6f-40f7-8a7a-49b177908396
END:VEVENT
END:VCALENDAR";
    var deserialized = Calendar.Load(testCase);
    var e = deserialized.Events.First();
    Assert.AreEqual(new CalDateTime(2017,11,17,10,41,35), e.Start);
    Assert.AreEqual(new CalDateTime(2017,11,17,11,41,35), e.End);
    Assert.AreEqual("aaa aaaaa:\n   aaaaa aaaa aaaaa aaaaaaa (aaaaa, aaaa, aaaaa, TP) aaa aaa aaaaa aaaa;\n        aaa aaaaa aaaa aaaa aaaa aaaaa aaaaaa aaaaaa (aa aaaaaa, aaaaaaa);\n    aaaaa aaaaaa aaa aaa aaaaa aaaaaa aa, aaaaaa aaaaaa, aaa.;\n\naaaa aaaa aaaaa aaa aa aaa aaa aaaaa aaaaaa aa aaa aaaa aaaaa`a aaaaa aaa. ", e.Description);
}

Whitespace matters in ical text, so your stack trace is insufficient. If you have some ics text, I can try again.

Hello @rianjs,
I'm still having the same issue. Below is the content from the ICS file:
BEGIN:VEVENT
DTSTAMP:20171120T124856Z
DTSTART;TZID=Europe/Helsinki:20160707T110000
DTEND;TZID=Europe/Helsinki:20160707T140000
SUMMARY:Some summary
<EMAIL_ADDRESS>DESCRIPTION:Key points:\n•	Some text (text\
 , text\, text\, TP) some text\;\n•	some tex
 t Some text (Text\, Text)\;\n•	Some tex
 t some text\, some text\, text.\;\n\nsome te
 xt some tex‘t some text.
ORGANIZER;X-CONFLUENCE-USER-KEY=ff801df01547101c6720006;CN=Some
<EMAIL_ADDRESS>CREATED:20160627T123608Z
LAST-MODIFIED:20160627T123608Z
ATTENDEE;X-CONFLUENCE-USER-KEY=ff8080ef1df01547101c6720006;CN=Some
<EMAIL_ADDRESS>SEQUENCE:1
X-CONFLUENCE-SUBCALENDAR-TYPE:other
TRANSP:TRANSPARENT
STATUS:CONFIRMED
END:VEVENT

I think it might actually be related to having unicode bullets (•) inside the DESCRIPTION.
Thank you.

The unicode bullets and apostrophes are fine. It's actually the hidden tabs (\t). It looks like this was formatted text, so a newline + tab character might be a paragraph. (Alternatively it could be bad encoding from another ical engine.) Whatever is doing the conversion isn't translating \t into "\t" the way it is with newlines ("\n").
With respect to serialization, this falls under the Content Line rules. The code that follows that section is in SimpleDeserializer.cs @chescock quoted the relevant parts of the spec when he built up the regex, but he didn't quote this piece from the end of that section. It's describing allowed characters in a content line:
CONTROL       = %x00-08 / %x0A-1F / %x7F
     ; All the controls except HTAB

HTAB refers to ASCII character 9 which is \t. So it's not allowed in a content line property. I'd suggest normalizing the Description text to encode the tab literally, like it does with the newlines.

Thanks for the detailed answer, @rianjs.
Unfortunately, the calendar is being taken from Atlassian Confluence, so I have no control on how people are formatting event contents there. The only option, though, could be to edit the stream contents before passing it to your library, but that, I guess, would put some extra overhead.
If there's no way to resolve this, I will probably going to stick with 3.0.15, which works fine even with the incorrect chars.

It's up to you. I would recommend normalizing the stream before funneling it to ical.net if you can. 3.0.15 is the end of the line for v3, it won't get receive any more updates because it can't. (Under the hood, v3 and v4 are radically different from a deserialization perspective: v3 used ANTLR; v4 doesn't.)
I guess I'd start with a no-op abstraction between the two. Some ICalendarNormalizer that returns the stream unchanged at first. Then thread in the tab normalization logic, which could then be extended to other normalization operations should they be needed in the future. The overhead shouldn't be noticeable. We were serializing and deserializing hundreds of events (most of them with recurrence rules) inside click handlers in a desktop application, and you couldn't really notice the lag. ical.net is safe to use AsParallel() as well.

I just talked to @chescock, and he thinks it's a bug, so one of us will fix it, and I'll update the thread with a nuget version that you can find it in.

It is goor to hear that and I will be looking forward for the new release.
Thanks!

Fixed in 4.0.3:
https://www.nuget.org/packages/Ical.Net/4.0.3

I've just upgraded to the latest Nuget and there are indeed NO issues.
Thank you!

Excellent!


Image Segmentation using UNet

Dataset : https://www.kaggle.com/tapakah68/segmentation-full-body-mads-dataset
We will be using the UNet Architecture to implement a model that can extract an image from its background.

Make a interface where we can upload image and using this algo it gives us image without background.


[Good First Issue]: Replicate Existing Cookbooks and Create New Examples - Batch 9

For context, see: CONTRIBUTING.md and cookbooks/README.md

Overview
We're looking for contributors to help expand our collection of Jupyter notebooks (cookbooks) that demonstrate various AI and automation tasks using Julep's features. This is a great opportunity for newcomers to get familiar with Julep and contribute to the project!
Objectives

Replicate existing cookbooks to ensure they're up-to-date and functioning correctly.
Create new cookbooks based on the ideas listed in the cookbooks/README.md file.

Tasks
1. Replicating Existing Cookbooks

Choose one or more of the existing cookbooks from the list in cookbooks/README.md.
Follow the instructions in the notebook to run it in Google Colab.
Verify that all cells execute without errors and produce the expected outputs.
If you encounter any issues or outdated information, document them for updating.

2. Creating New Cookbooks

Select an idea from the "Potential Cookbooks for Contributors" section in cookbooks/README.md.
Create a new Jupyter notebook following the structure of existing cookbooks.
Implement the chosen use case using Julep's features.
Ensure your notebook includes:

A clear introduction and overview of the task
Step-by-step implementation with explanations
Proper error handling and user guidance
A conclusion summarizing the key learnings

Guidelines for Creating New Cookbooks

Naming Convention: Name your notebook following the pattern XX-Descriptive_Name.ipynb, where XX is the next available number in the sequence.

Structure:

Start with an introduction explaining the purpose of the cookbook.
Include a cell for installing the Julep client.
Create sections for each major step (e.g., Creating an Agent, Defining a Task, Creating an Execution).
Add markdown cells to explain concepts and code.

Code Quality:

Ensure your code is well-commented and follows PEP 8 style guidelines.
Use meaningful variable names.
Handle potential errors gracefully.

Documentation:

Explain each step clearly, assuming the reader is new to Julep.
Include links to relevant Julep documentation where appropriate.

Testing:

Test your notebook thoroughly in Google Colab to ensure it runs without errors.
Include sample outputs where relevant.

Update README.md:

Add your new cookbook to the table in cookbooks/README.md.
Include a brief description and mark it as implemented.

How to Contribute

Fork the repository.
Create a new branch for your cookbook (e.g., cookbook/weather-notification-service).
Develop your cookbook following the guidelines above.
Test your notebook thoroughly.
Commit your changes and push to your fork.
Open a pull request with a clear description of your contribution.

Resources

Julep Documentation
Existing Cookbooks
CONTRIBUTING.md

Need Help?
If you have any questions or need assistance, please don't hesitate to ask in the comments of this issue or reach out on our Discord channel.
We're excited to see your contributions and help grow the Julep cookbook collection!

Long-ass list of ideas

Automated Learning Path Generator
Description: Creates personalized learning paths for users based on their interests, progress, and performance.
Features:
Tools: huggingface, wikipedia
Step Types: Tool Call, Evaluate, Conditional Logic, Generate Learning Path (Prompt), Send Recommendations, Log
AI-Powered Resume Builder and Analyzer
Description: Assists users in building resumes, analyzes their strengths and areas for improvement, and provides feedback.
Features:
Tools: huggingface, sendgrid
Step Types: Prompt, Tool Call, Evaluate, Conditional Logic, Send Feedback, Log
Automated Vendor Management System
Description: Manages vendor information, monitors performance, and handles communications.
Features:
Tools: api_call, sendgrid, slack
Step Types: Tool Call, Evaluate, Conditional Logic, Update Vendor Info (Set), Send Notifications, Log
Intelligent Job Scheduling and Optimization
Description: Schedules jobs based on priority, resource availability, and deadlines to optimize workflow efficiency.
Features:
Tools: google_calendar, sendgrid, slack
Step Types: Tool Call, Evaluate, Conditional Logic, Schedule Jobs (Set), Send Notifications, Log
AI-Driven Sentiment Analysis for Customer Reviews
Description: Analyzes customer reviews to determine sentiment, categorize feedback, and generate actionable insights.
Features:
Tools: huggingface, slack
Step Types: Tool Call, Evaluate, Conditional Logic, Categorize Feedback (Set), Send Insights, Log
Automated Resource Allocation and Management
Description: Allocates resources based on project needs, monitors usage, and optimizes allocations for efficiency.
Features:
Tools: api_call, google_calendar, slack
Step Types: Tool Call, Evaluate, Conditional Logic, Allocate Resources (Set), Monitor Usage, Log
Intelligent Meeting Minutes Recorder and Summarizer
Description: Records meetings, transcribes audio, summarizes key points, and distributes minutes to participants.
Features:
Tools: dalle, sendgrid, slack
Step Types: Tool Call, Evaluate, Conditional Logic, Transcribe Audio (Prompt), Summarize (Evaluate), Send Minutes, Log
Automated Content Approval Workflow
Description: Streams content through approval stages, ensures compliance, and notifies stakeholders of approved content.
Features:
Tools: slack, sendgrid
Step Types: Tool Call, Evaluate, Conditional Logic, Approve Content (Set), Send Notifications, Log

i can work on this

@ijindal1  can you assign this issue to me

I would like to work on this issue , please assign it to me.

@PRIYANKjakharia @prathamesh424 @JanumalaAkhilendra
Please specify which idea of the list each of you would like to work on? I can create a separate issue and assign it to you guys

AI-Driven Sentiment Analysis for Customer Reviews, I would like to work on this . please it to me :)
Thank you.

You can work on it @JanumalaAkhilendra :)


Added configuration option to disable autoconfiguration

This adds two functions, load_integrations & load_integration(integration) that allow Bugsnag integrations to be loaded during runtime.
By default, load_integrations will be run when the bugsnag module is required.  This behaviour can be disabled using the environment variable BUGSNAG_DISABLE_AUTOCONFIGURE.
Tentatively fixes #391, #403

Everything works as expected with rack, and there's no magic conf happening.


Support argument aliases that set multiple arguments

 Issue by darnir
Tuesday Aug 15, 2017 at 07:17 GMT
Originally opened as https://github.com/clap-rs/clap/issues/1030

Problem Description
In my projects, I often have a scenario where there is a single shortcut switch which sets values for multiple switches. For example, in my current project, I have (taken directly from my code):
        .arg(
            Arg::with_name("UTILIZATION")
                .long("utilization")
                .short("u")
                .takes_value(true)
                .overrides_with_all(&["UBEGIN", "USTEP", "UEND"])
                .help("Utilization of generated taskset"),
        )
        .arg(
            Arg::with_name("UBEGIN")
                .long("utilization-begin")
                .takes_value(true)
                .default_value("0.025")
                .help("Begin Utilization Range"),
        )
        .arg(
            Arg::with_name("USTEP")
                .long("utilization-step")
                .default_value("0.1")
                .help("Step for Utilization Range"),
        )
        .arg(
            Arg::with_name("UEND")
                .long("utilization-end")
                .default_value("1.0")
                .help("End of Utilization Range"),
        )
        .group(
            ArgGroup::with_name("UTILIZATION_RANGE")
                .conflicts_with("UTILIZATION")
                .multiple(true),
        )

Now what I would like it for the argument UTILIZATION to explicitly set values for UBEGIN, USTEP and UEND.
As you can see, I currently have a overrides and conflicts rule and then later in the application code, UTILIZATION is tested for and the other values are set.
Another way to implement this would be by allowing the user to manipulate values in the ArgMatches struct. Then one could simply set the values there before returning to the main client for consumption.
This is not a very obscure feature but is often used in many programs. For a more real-world usage of such a feature, please look at GNU Wget, quoting from its manual here (Emphasis mine):

  --mirror
       Turn on options suitable for mirroring.  This option turns on recursion and time-stamping, sets infinite recursion depth and keeps FTP
       directory listings.  It is currently equivalent to **-r -N -l inf --no-remove-listing**.

 Comment by kbknapp
Wednesday Oct 04, 2017 at 03:03 GMT

Using Arg::default_value_if will probably get you about 90% of what you're looking for. Otherwise, you'll have to go with defining these aliases in user code. I'm not against adding something like this feature in the future, but it's not something I can work on right now as there are about 1,000 other things I need to finish first :stuck_out_tongue_winking_eye:


Namespace the scanner.

Fixes the weird static linkage conflict issue we were seeing in Mac builds.

Thanks @robrix!


Replace logger.warn with logger.warning

Describe your changes

logger.warn has been deprecated since Python 3.3, this replaces it with logger.warning.
This is the only instance of logger.warn in our client codebase
Resolves CLI-206

 Backward/forward compatibility checks

Check these boxes or delete any item (or this section) if not relevant for this PR.

[x] Client+Server: this change is compatible with old servers
[x] Client forward compatibility: this change ensures client can accept data intended for later versions of itself

Note on protobuf: protobuf message changes in one place may have impact to
multiple entities (client, server, worker, database). See points above.

Changelog

@prbot approve

Thanks @howard36 !


Tasks 1469 and 1504.

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

What issue are you addressing with this pull request? https://project.marklogic.com/jira/browse/DHFPROD-1504 and
https://project.marklogic.com/jira/browse/DHFPROD-1469
Are you modifying the correct branch? develop - 1275
Have you run unit tests? (See CONTRIBUTING.md)
Version of MarkLogic Java Client API (see Readme.txt)
Version of MarkLogic Server (see admin gui on port 8001)
Java version (java -version)
OS and version
What Changed: What happened before this change? What happens without this change?

Included all the suggested changes.


Add functionality/documentation for changing the "default" value before first entry

Right now, the default value starts at zero. Several simple examples where this might not need be the case:

a sensor where the readings are between 0 and 16, centered at 8
a sensor where 1 is neutral and 0 is activated
a signal representing the inverse or complement of another signal
etc.

Going through and doing some issue cleaning. Closing this one since there is the default_value argument.


Music refuses to play

I've done everything as said in guide, but that damn music refuses to play no matter if I play it from my local drive, YouTube or Soundcloud.
That's how it looks in bot's console: http://puu.sh/oRIMP/d89519bee8.png
,,Nie można odnaleźć określonego pliku" means ,,Can't find specified file"

Missing ffmpeg. Check if path is correct. If it is, then reboot computer, it should resolve your problem.

Yes this is a common error if you didn't setup your ffmpeg correctly. If it doesn't work for you recheck the guide.


Duplicating a Token to Another Set Displays Error

Describe the bug
When duplicating a token to another set, the error Token names must be unique is displayed. This only happens when duplicating it from the menu when right-clicking the token itself, and not the token-group.
To Reproduce
Steps to reproduce the behavior:

Right-click a token
Click duplicate token
Remove copy from the token-name
Unselect current set and select another set
See error

Expected behavior
Would it be possible to throw this error if and only when the user has the same/current set selected when duplicating a token?

This error maybe shouldn't be displayed when duplicating a token to another set as the purpose of this process is to have sets overwrite tokens

Screenshots or Screencasts
The current set is Light, and even when having only the Dark set selected the error is displayed:

Figma File
Test File

I'd say we should rework the duplicate to other set feature so that i cannot change the name there. All i should be able to do is pick one or more token sets to duplicate into, nothing else.

Closed by #2467

Added to featurebase roadmap item 💚 Naming conflict error enhancements - QOL


round_corners() should clamp excessive cut-offs

Is your feature request related to a problem? Please describe.
round_corners() fails when cut-offs are chosen to big.
Total failure is very frustrating, especially as it seems unnecessary and is very difficult to resolve if e.g. the input path is computed.
Code to reproduce:
include <BOSL2/std.scad>
include <BOSL2/rounding.scad>

polygon(
    round_corners(
        [
            [0, 0],
            [10, 0],
            [20, 1],
            [20, -10],
        ],
        cut=[8, 0, 0, 0],  // works with 7, fails with 8
        $fn=20
    )
);

Describe the solution you'd like
The cut-off should automatically be clamped to the maximum value that the path permits.
Neighboring cut-offs should be weighted accordingly for a balanced resolution.
Describe alternatives you've considered
With paths that are less trivial than the above example, only trial-and-error is possible to find the maximum possible cut-off values.
If the path is computed, it is almost impossible to come up with cut-values that reliably work.
Additional context
Also see #380.

I don't know a reasonable way to figure out what to clamp them to that works in general.  For your example with just a single roundover, of course it is easy to identify a maximum rounding.  The problem is when you have different values at every corner, how much do you change each corner to produce a valid set of parameters?  There's no unique solution to this question.   What do you mean by "neighboring cutoffs should be weighted accordingly".  According to what?   This probably turns into a system of N equations for N points.   I also don't really like the idea that your input is changed on you, because then you might say, "I want less rounding" and you decrease the number and nothing happens.   I suppose if I had an algorithm for how to do it I could allow "inf" for the maximal rounding.
The amount of trial and error you need to use is limited by the verbose option.   For your simple case with just one roundover it will tell you that 8*.989 will work.  For more complicated cases you might have to iterate a couple times depending on what you want.  I agree that this strategy may be a problem for computed data.

I don't know a reasonable way to figure out what to clamp them to that works in general.  For your example with just a single roundover, of course it is easy to identify a maximum rounding.  The problem is when you have different values at every corner, how much do you change each corner to produce a valid set of parameters?  There's no unique solution to this question.   What do you mean by "neighboring cutoffs should be weighted accordingly".  According to what?   This probably turns into a system of N equations for N points.   I also don't really like the idea that your input is changed on you, because then you might say, "I want less rounding" and you decrease the number and nothing happens.   I suppose if I had an algorithm for how to do it I could allow "inf" for the maximal rounding.
The amount of trial and error you need to use is limited by the verbose option.   For your simple case with just one roundover it will tell you that 8*.989 will work.  For more complicated cases you might have to iterate a couple times depending on what you want.  I agree that this strategy may be a problem for computed data.

Please consider this example:
include <BOSL2/std.scad>
include <BOSL2/rounding.scad>

polygon(
    round_corners(
        [
            [0, 0],
            [0, 40],
            [20, 40],
            [20, 0],
        ],
        radius=[0, 12, 8, 0]
    )
);

The radii 12 and 8 here are at their maximum, because the length of the common edge is 20. Now, if the 8 was changed to 10, one option was to clamp the 10 back to 8, because of the edge of length 20, the first 12 units were already used by the previous point in the path.
Another option was to scale both numbers down so that their sum is 20 again. That is, use the new values 12*(20/22) + 10*(20/22). (This is what I meant with weighting.)
I understand that this can cause implicit and possibly unintended behavior such as when a single number changes, nothing seems to happen, or when a single number changes, the roundings of the neighboring points change.
However, the use cases that I have experienced so far (I'm still new to OpenSCAD) were always one of these:

I was hand-crafting a polygon shape, refreshing the preview after every change to a radius and besides the visual in the preview kept a good mental model of the shape. If I exceeded a radius it would have been my preference if a warning was in the console rather than the polygon vanishing from the preview – and I'd probably not even care about it, because it's more important to me that things are round than the exact amount of the roundness.
I was writing some code that computed the polygon shape. Almost impossible to get the radii right. In this case I'd more than happy if errors and warnings did not occur and radii were just adjusted to make them work. This too assumes that I usually don't care about the exact details of the rounding. I still closely inspect the radii, but if the algorithm fixes details for me it's much better than stopping with an error that I cannot fix.

This is possibly motivated a bit because my first encounter with rounding was https://kurthutten.com/blog/round-anything-api/, which I briefly used before changing to BOSL. At that page is also an explanation on how the author dealt with radii conflicts.
In summary, maybe the key motivation here is that rounding should be forgiving if I don't care about the details and still give me the option to control it (e.g. via console output) when I do.

Please consider this example:
include <BOSL2/std.scad>
include <BOSL2/rounding.scad>

polygon(
    round_corners(
        [
            [0, 0],
            [0, 40],
            [20, 40],
            [20, 0],
        ],
        radius=[0, 12, 8, 0]
    )
);

The radii 12 and 8 here are at their maximum, because the length of the common edge is 20. Now, if the 8 was changed to 10, one option was to clamp the 10 back to 8, because of the edge of length 20, the first 12 units were already used by the previous point in the path.
Another option was to scale both numbers down so that their sum is 20 again. That is, use the new values 12*(20/22) + 10*(20/22). (This is what I meant with weighting.)
I understand that this can cause implicit and possibly unintended behavior such as when a single number changes, nothing seems to happen, or when a single number changes, the roundings of the neighboring points change.
However, the use cases that I have experienced so far (I'm still new to OpenSCAD) were always one of these:

I was hand-crafting a polygon shape, refreshing the preview after every change to a radius and besides the visual in the preview kept a good mental model of the shape. If I exceeded a radius it would have been my preference if a warning was in the console rather than the polygon vanishing from the preview – and I'd probably not even care about it, because it's more important to me that things are round than the exact amount of the roundness.
I was writing some code that computed the polygon shape. Almost impossible to get the radii right. In this case I'd more than happy if errors and warnings did not occur and radii were just adjusted to make them work. This too assumes that I usually don't care about the exact details of the rounding. I still closely inspect the radii, but if the algorithm fixes details for me it's much better than stopping with an error that I cannot fix.

This is possibly motivated a bit because my first encounter with rounding was https://kurthutten.com/blog/round-anything-api/, which I briefly used before changing to BOSL. At that page is also an explanation on how the author dealt with radii conflicts.
In summary, maybe the key motivation here is that rounding should be forgiving if I don't care about the details and still give me the option to control it (e.g. via console output) when I do.

Yes, round_corners was inspired by the round-anything lib, but I did not like the hack for dealing with conflicting radii.
The problem with the idea of radii adjusted to "make them right" is that what's right depends on user intentions.    If I specify the same rounding at every corner and only one is in violation what do I want?  Maybe I want all of them decreased so that the rounding is the same everywhere.   If the bad corner is very bad then you mysteriously get what looks like no rounding at all.  I'd say that's pretty confusing behavior.  So maybe I just want to tweak the rounding at the "bad" corner.
The idea of adjusting parameters in a scaled way may or may not be what the user wants.  But also it's nontrivial to actually do it.   Your example above hides the complexity because you are using radius on right angle corners.  In the general case, you don't know how to adjust the parameters to get valid parameters.   The scalefactors get you closer, but don't actually work robustly in my experience.   Maybe one could use an iteration, take scalefactors and set everything above 1 to 1 and then apply the new factors and repeat until (hopefully) reaching a fixed point.  This will fail on the collinear case, I think.  And it's hard to understand what exactly it will do.  The key point is that the round_corner behavior needs to be predictable, so the user knows what it's going to do.  Its behavior should be well-defined.  Mysterious adjustment of the user's input breaks this.   Note that you say "the algorithm fixes details" but if it changes rounding from 10 to 1 is that really a "detail"?
It seems like part of the problem is that the real intention of this approach for rounding is not to "maximally" round something, but to do what the name says and round off the corners.   Maybe your problem is better solved with smooth_path() instead.   That approach does maximally round (though it operates on edges instead of vertices).  Another possible approach would be to use turtle() and use the "arcleft" and "arcright" commands to draw the specific roundings you want.   This will naturally produce maximal roundings.   Or perhaps path_join().
If you want to stick with round_corners and you want lots of rounding, don't care about the details, one possible solution to the problem you are dealing with is to use the "joint" parameter instead of "cut" or "radius".  It is easy to determine validity of the rounding with this parameter.  (At the moment it doesn't work with circular rounding, but that will be fixed soon.)   If you use "joint" you can easily compute a set of valid maximal rounding parameters yourself from your polygon by using its side lengths, for whatever style of maximal you favor.   Have you made use of the verbose=true argument to get the scale factors?

Yes, round_corners was inspired by the round-anything lib, but I did not like the hack for dealing with conflicting radii.
The problem with the idea of radii adjusted to "make them right" is that what's right depends on user intentions.    If I specify the same rounding at every corner and only one is in violation what do I want?  Maybe I want all of them decreased so that the rounding is the same everywhere.   If the bad corner is very bad then you mysteriously get what looks like no rounding at all.  I'd say that's pretty confusing behavior.  So maybe I just want to tweak the rounding at the "bad" corner.
The idea of adjusting parameters in a scaled way may or may not be what the user wants.  But also it's nontrivial to actually do it.   Your example above hides the complexity because you are using radius on right angle corners.  In the general case, you don't know how to adjust the parameters to get valid parameters.   The scalefactors get you closer, but don't actually work robustly in my experience.   Maybe one could use an iteration, take scalefactors and set everything above 1 to 1 and then apply the new factors and repeat until (hopefully) reaching a fixed point.  This will fail on the collinear case, I think.  And it's hard to understand what exactly it will do.  The key point is that the round_corner behavior needs to be predictable, so the user knows what it's going to do.  Its behavior should be well-defined.  Mysterious adjustment of the user's input breaks this.   Note that you say "the algorithm fixes details" but if it changes rounding from 10 to 1 is that really a "detail"?
It seems like part of the problem is that the real intention of this approach for rounding is not to "maximally" round something, but to do what the name says and round off the corners.   Maybe your problem is better solved with smooth_path() instead.   That approach does maximally round (though it operates on edges instead of vertices).  Another possible approach would be to use turtle() and use the "arcleft" and "arcright" commands to draw the specific roundings you want.   This will naturally produce maximal roundings.   Or perhaps path_join().
If you want to stick with round_corners and you want lots of rounding, don't care about the details, one possible solution to the problem you are dealing with is to use the "joint" parameter instead of "cut" or "radius".  It is easy to determine validity of the rounding with this parameter.  (At the moment it doesn't work with circular rounding, but that will be fixed soon.)   If you use "joint" you can easily compute a set of valid maximal rounding parameters yourself from your polygon by using its side lengths, for whatever style of maximal you favor.   Have you made use of the verbose=true argument to get the scale factors?

Not going to implement this.  I could possibly see a function for calculating some kind of rounding factors for a given path external to round_corners, so you could write round_corners(path, joint=cool_rounding(path)) but I don't know how to write the cool_rounding function.

Not going to implement this.  I could possibly see a function for calculating some kind of rounding factors for a given path external to round_corners, so you could write round_corners(path, joint=cool_rounding(path)) but I don't know how to write the cool_rounding function.


Error in seekable stream on Safari if response is smaller than chunksize

Fixing this (by setting the range to -1) seems to break the feature in Chrome 🤔

Your behaviour seems to be correct according to this StackOverflow question. You can send a 206 for the complete file but sending a 200 is also okay, even though that might imply that range requests are not supported.


bug: can't parse abstract class

Input code
export abstract class AbstractProviderDeliveryService {
}

Describe the bug
❯ npx swc src -s -d ./dist
error: Expected {, got abstract
  --> src/modules/delivery/provider/AbstractProviderDeliveryService.ts:73:8
   |
73 | export abstract class AbstractProviderDeliveryService {
   |        ^^^^^^^^

failed to process js file

Caused by:
    failed to parse module
Successfully compiled 188 files with swc.
Error: Failed to compile 1 file with swc.
    at Object.assertCompilationResult (node_modules/@swc/cli/lib/swc/util.js:152:15)
    at default_1 (node_modules/@swc/cli/lib/swc/dir.js:137:14)

Config
{
    "test": ".*.ts$",
    "sourceMaps": true,
    "jsc": {
      "loose": true,
      "target": "es2018",
      "parser": {
        "syntax": "typescript",
        "tsx": false,
        "decorators": true,
        "dynamicImport": true
      },
      "transform": {
        "legacyDecorator": true,
        "decoratorMetadata": true
      }
    },
    "module": {
        "type": "commonjs",
        "strict": true,
        "strictMode": false,
        "lazy": false,
        "noInterop": false
    }
}

Expected behavior
Should be parsed without error
Version
The version of @swc/core: 1.2.50
The version of @swc/cli: 0.1.35

I tested it but it works, both from rust side and using swc cli.
My output:
➜  lab npx swc index.ts
Successfully compiled 1 file with swc.
class AbstractProviderDeliveryService {
}
exports.AbstractProviderDeliveryService = AbstractProviderDeliveryService;

//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzdGRvdXQifQ==%

Please ensure that you are using the proper version of swc.
You have to install both of @swc/cli and @swc/core locally.

@kdy1, I found the issue.
A simple example to reproduce:
// tmp/AbstractProviderDeliveryService.ts
export abstract class AbstractProviderDeliveryService {
     // legal typescript method annotation
    async prepareGetRequest?(): Promise<any>;
}

npx swc tmp -s -d ./dist

Output:
error: Expected {, got abstract
 --> tmp/AbstractProviderDeliveryService.ts:1:8
  |
1 | export abstract class AbstractProviderDeliveryService {
  |        ^^^^^^^^

failed to process js file

Caused by:
    failed to parse module
Error: Failed to compile 1 file with swc.
    at Object.assertCompilationResult (node_modules/@swc/cli/lib/swc/util.js:152:15)
    at default_1 (node_modules/@swc/cli/lib/swc/dir.js:137:14)

But the real issue is in this typescript construction ?():

? after the method name seems to be a cause.

? after the method name seems to be a cause.

Yes, but this is valid typescript code

I still have this issue with  @swc/core": "^1.2.60

error: Expected {, got abstract
   --> ./src/extensionPoints/menuItemExtension.ts:104:8
    |
104 | export abstract class MenuItem extends Extension<MenuItemConfig> {
    |        ^^^^^^^^

Closing as the example is wrong.


Bazel/Blaze BUILD

Hey Googlers!
Any chance you'd be down to release the Blaze/Bazel (Blazel!) BUILD files for this code? Would be handy to those of use building with Bazel.
Two of the external dependencies have done so already (nanopb and PromisesObjC), and I'd asked GoogleUtilities if they'd do the same in https://github.com/google/GoogleUtilities/issues/72
If useful, here's one I spun up for my own quick use.
# Created from https://github.com/google/GoogleDataTransport/blob/1a65c30db4fc841e06586441682c2dda036d9db3/GoogleDataTransport.podspec

objc_library(
    name = "GoogleDataTransport",
    hdrs = glob(["GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/*.h"]),
    visibility = ["//visibility:public"],

    srcs = glob(["GoogleDataTransport/GDTCORLibrary/**/*", "GoogleDataTransport/GDTCCTLibrary/**/*"]),
    deps = [
        "@GooglePromises//:FBLPromises",
        "@GoogleUtilities//:Environment",
        "@GoogleUtilities//:Logger",
        "@nanopb//:nanopb",
    ],
    sdk_frameworks = [
        "CoreTelephony",
        "SystemConfiguration",
    ],
    sdk_dylibs = ["libz"],
)

Thanks for your consideration!
Chris
(ex-Googler)
P.S. To load nanopb, you'll need a patch file to enable malloc. To save time, here's one that works for the latest commit (2210cd92a6237a9ff82b58cfbe0c58da25ce1e11) that supports the compiled protos you're embedding
--- pb.h
+++ pb.h
@@ -13,2 +13,2 @@
 /* Enable support for dynamically allocated fields */
-/* #define PB_ENABLE_MALLOC 1 */
+#define PB_ENABLE_MALLOC 1

--- BUILD
+++ BUILD
@@ -7,2 +7,3 @@
 cc_library(
   name = "nanopb",
+  include_prefix = "nanopb",

Hey @cpsauer!  Thanks for the request. Would you provide a bit more context about how it would be used?  Both GoogleUtilities and GoogleDataTransport are primarily support libraries used with other SDKs like Firebase.  What is your use case?
From a Firebase perspective (and the Firebase team owns these two libraries), we'd be hesitant to add a fifth distribution method that has limited demand. See https://github.com/firebase/firebase-ios-sdk/issues/6115.
Despite that, we could consider community support from a PR with an implementation that includes docs and GitHub Action tests.

I think I got a fix for this using xcframework - check the link
https://github.com/firebase/firebase-ios-sdk/issues/6115
N.B. - you'll need to adjust these to suit
"ios_device": "ios-arm64",
"ios_simulator": "ios-arm64_x86_64-simulator",
load("@build_bazel_rules_apple//apple:apple.bzl",
    "apple_static_framework_import", "apple_dynamic_xcframework_import"
)

objc_library(
    name = "FirebaseAnalytics",
    deps = ["FBLPromisesXCFramework","FirebaseAnalyticsXCFramework","FirebaseAnalyticsSwiftXCFramework",
    "FirebaseCoreXCFramework","FirebaseCoreDiagnosticsXCFramework", "FirebaseCoreInternalXCFramework",
    "FirebaseInstallationsXCFramework","GoogleAppMeasurementXCFramework","GoogleAppMeasurementIdentitySupportXCFramework",
    "GoogleUtilitiesXCFramework","GoogleDataTransportXCFramework","nanopbXCFramework"],
    enable_modules = True,
    module_name = "FirebaseAnalytics",
    visibility = ["//visibility:public"],
)

apple_dynamic_xcframework_import(
    name = "FBLPromisesXCFramework",
    library_identifiers = {
        "ios_device": "ios-arm64",
        "ios_simulator": "ios-arm64_x86_64-simulator",
    },
    xcframework_imports = glob(["FBLPromises.xcframework/**"] ),
)

apple_dynamic_xcframework_import(
    name = "FirebaseAnalyticsXCFramework",
    library_identifiers = {
        "ios_device": "ios-arm64_armv7",
        "ios_simulator": "ios-arm64_i386_x86_64-simulator",
    },
    xcframework_imports = glob(["FirebaseAnalytics.xcframework/**"] ),
)

apple_dynamic_xcframework_import(
    name = "FirebaseAnalyticsSwiftXCFramework",
    library_identifiers = {
        "ios_device": "ios-arm64",
        "ios_simulator": "ios-arm64_x86_64-simulator",
    },
    xcframework_imports = glob(["FirebaseAnalyticsSwift.xcframework/**"] ),
)

apple_dynamic_xcframework_import(
    name = "FirebaseCoreXCFramework",
    library_identifiers = {
        "ios_device": "ios-arm64",
        "ios_simulator": "ios-arm64_x86_64-simulator",
    },
    xcframework_imports = glob(["FirebaseCore.xcframework/**"] ),
)

apple_dynamic_xcframework_import(
    name = "FirebaseCoreDiagnosticsXCFramework",
    library_identifiers = {
        "ios_device": "ios-arm64",
        "ios_simulator": "ios-arm64_x86_64-simulator",
    },
    xcframework_imports = glob(["FirebaseCoreDiagnostics.xcframework/**"] ),
)

apple_dynamic_xcframework_import(
    name = "FirebaseCoreInternalXCFramework",
    library_identifiers = {
        "ios_device": "ios-arm64",
        "ios_simulator": "ios-arm64_x86_64-simulator",
    },
    xcframework_imports = glob(["FirebaseCoreInternal.xcframework/**"] ),
)

apple_dynamic_xcframework_import(
    name = "FirebaseInstallationsXCFramework",
    library_identifiers = {
        "ios_device": "ios-arm64",
        "ios_simulator": "ios-arm64_x86_64-simulator",
    },
    xcframework_imports = glob(["FirebaseInstallations.xcframework/**"] ),
)

apple_dynamic_xcframework_import(
    name = "GoogleAppMeasurementXCFramework",
    library_identifiers = {
        "ios_device": "ios-arm64_armv7",
        "ios_simulator": "ios-arm64_i386_x86_64-simulator",
    },
    xcframework_imports = glob(["GoogleAppMeasurement.xcframework/**"] ),
)

apple_dynamic_xcframework_import(
    name = "GoogleAppMeasurementIdentitySupportXCFramework",
    library_identifiers = {
        "ios_device": "ios-arm64_armv7",
        "ios_simulator": "ios-arm64_i386_x86_64-simulator",
    },
    xcframework_imports = glob(["GoogleAppMeasurementIdentitySupport.xcframework/**"] ),
)

apple_dynamic_xcframework_import(
    name = "GoogleDataTransportXCFramework",
    library_identifiers = {
        "ios_device": "ios-arm64",
        "ios_simulator": "ios-arm64_x86_64-simulator",
    },
    xcframework_imports = glob(["GoogleDataTransport.xcframework/**"] ),
)

apple_dynamic_xcframework_import(
    name = "GoogleUtilitiesXCFramework",
    library_identifiers = {
        "ios_device": "ios-arm64",
        "ios_simulator": "ios-arm64_x86_64-simulator",
    },
    xcframework_imports = glob(["GoogleUtilities.xcframework/**"] ),
)

apple_dynamic_xcframework_import(
    name = "nanopbXCFramework",
    library_identifiers = {
        "ios_device": "ios-arm64",
        "ios_simulator": "ios-arm64_x86_64-simulator",
    },
    xcframework_imports = glob(["nanopb.xcframework/**"] ),
)

Hi @wweevv-johndpope, just closing the loop with regard to the HTTPBody crash you mentioned. If it was from the Promises framework, that was recently fixed in Promises 2.3.1. Just grab the Promises xcframework from the latest Firebase release (https://github.com/firebase/firebase-ios-sdk/releases/tag/10.13.0).


change hover sidebar

change hover sidebar, general review

Also, please avoid force-push when possible. It makes it a lot harder to review incrementally.


Use new ExifInterface Support Library

Hi,
today I saw new ExifInterface Support Library and I think you should rewrite code to use this version of ExifInterface class instead of framework's class.
Especially for security reasons, because for example CVE-2016-3862 (http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=2016-3862) was fixed there.
See: https://android-developers.googleblog.com/2016/12/introducing-the-exifinterface-support-library.html
Thanks.

I support this as well.

This will be in the next release. It required dropping support for SDK 10-13.


Print errors to stderr

Bug Report

TSLint version: 4.3.1
TypeScript version: 2.1.5
Running TSLint via: CLI

TypeScript code being linted
Any code with errors.
Actual behavior
tslint prints error to stdout.
Expected behavior
tslint prints error to stderr.

This has since been done! 🎉
https://github.com/palantir/tslint/blob/61b0826d1547da617a2baac93497b1bf8993a568/src/tslintCli.ts#L283


if there's only one table, assign it to columns

select id from users
The extractor returns the column as unknown.id instead of users.id, which causes the columns_in_queries count to be wrong.

This now happens after the extract function completes in the execute function.


Add STM32L0 USB support

#5163 enables HAL-based USB device driver for all supported STM32 families except for L0.

@tagunil I opened PR #7498 to add USB device support for L0 series. Could you please test it?

Will do.

PR #7498 was merged.


Android: select the low-level implementations from other importations

This PR needs some context first: there is two low-level implementations for Nit apps on Android. The oldest is based on C code and native_app_glue, it is used by all our game engines. The new one is based on a custom Java class NitActivity, it is used to implement app::ui and should replace the oldest one when I have time to work on it.
Prior to this PR, importing android imported the old C implementation, and you had to import android::ui to get the Java implementation.
This PR changes this behavior and uses conditional importations to choose between the two low-level implementations. So importing android and gamnit uses the old C implementation (now android::game) and importing android and app::ui uses the new Java implementation (android::nit_activity).
This allows us to use the simple nitc src/calculator.nit -m android, instead of nitc src/calculator.nit -m ../../lib/android/ui.nit. And the most important is that the user doesn't have to chose between (or understand) the two low-level implementations.

+1

+1


Speed Up Filter ANDs operations

This PR fixes #4659 and improves the way we do AND operations by using the latest RoaringBitmap feature to do intersections with serialized bitmaps. Doing so drastically reduces the time spent reading, copying bytes in memory to use and keep a subset of the containers in the bitmap.
Some Example Results
With a 45M documents dataset running on a good NVMe. This example filter was taking 77ms and with this PR only 13ms (6x speedup):
artist = 'The Beatles' AND (duration 150 TO 500 OR duration NOT EXISTS) AND genres IN [Rock, 'Rock and Roll'] AND rating > 4 AND released_year 1960 TO 1990

By reordering the filter AND clauses we can reach a constant 8ms execution time. However, note that it is a manual operation. On the other side the previous filter pipeline is still at a constant 45ms execution time with this filter. (6x speedup)
artist = 'The Beatles' AND genres IN [Rock, 'Rock and Roll'] AND released_year 1960 TO 1990 AND (duration 150 TO 500 OR duration NOT EXISTS)

To Do

[x] Rebase on release-v1.9.0.
[ ] ~Skip branches of the facet/filter tree when nothing is in common with the universe~ slower this way.
[x] When the universe is required use the universe given in parameter if possible.

bors merge


panic after using google.golang.org/protobuf/cmd/protoc-gen-go

What version of protobuf and what language are you using?
libprotoc 3.11.4
protoc-gen-go v1.21.0 (from go install google.golang.org/protobuf/cmd/protoc-gen-go)
What did you do?
run protoc -I=. --go_out=paths=source_relative:. *.proto to generate new types.pb.go
source code for types.proto
syntax = "proto3";

package ngtypes;
option go_package = "github.com/ngchain/ngcore/ngtypes";

message Account {
    uint64 num = 1;
    bytes owner = 2; // pk -> balance in anonymous fields
    uint64 nonce = 4;

    bytes contract = 5; // separate the code and state
    bytes state = 6;
}

message BlockHeader {
    uint64 height = 1;
    int64 timestamp = 2;

    bytes prev_block_hash = 3;
    bytes sheet_hash = 4; // assemble vault into block
    bytes trie_hash = 5;

    bytes target = 6;
    bytes nonce = 7;
}

message Sheet {
    map<uint64, Account> accounts = 2;
    map<string, bytes> anonymous = 3;
}

... and other messages in one file. It works while using gogo v1.3

What did you expect to see?
works fine
What did you see instead?
panic: runtime error: index out of range [5] with length 0

goroutine 1 [running]:
github.com/ngchain/ngcore/ngtypes.(*Sheet).ProtoReflect(0xc00006c740, 0x0, 0x0)
        C:/Users/C/OneDrive/ngcore/ngtypes/types.pb.go:518 +0x133
google.golang.org/protobuf/proto.MarshalOptions.Marshal(0x100, 0x1744fa0, 0xc00006c740, 0x0, 0x0, 0x0, 0x0, 0x0)
        C:/Users/C/go/pkg/mod/google.golang.org/protobuf@v1.21.0/proto/encode.go:83 +0x74
github.com/ngchain/ngcore/ngtypes.(*Sheet).CalculateHash(0xc00006c740, 0x0, 0x0, 0x0, 0x0, 0x0)
        C:/Users/C/OneDrive/ngcore/ngtypes/sheet.go:104 +0xb8
github.com/ngchain/ngcore/ngtypes.init()
        C:/Users/C/OneDrive/ngcore/ngtypes/sheet.go:127 +0x943

Anything else we should know about your project / environment?
https://code.ngin.cash/C/ngcore/src/commit/d09e1e9a0040d725abc02e04bff04e23cd3ceae5/ngtypes/types.proto

Thanks for the report. However, without an actual program that we can run that reproduces that problem, there's little that we can do.

Have you tried running your program with the race detector? That stack trace is indicative of a problem that can never happen. The panic is apparently coming from here. However, the file_types_proto_msgTypes slice is allocated at init with a size of 8 and it is never cleared afterwards. Therefore, it could only have gotten a length of 0 if there is memory corruption going on in your program.

Thanks for your answer. I have found my mistake.
I have created some global hash for convinence, like this
// GetGenesisBlock will return a complete sealed GenesisBlock
func GetGenesisBlock() *Block {
	txs := []*Tx{
		GetGenesisGenerateTx(),
	}

	header := &BlockHeader{
		Height:        0,
		Timestamp:<PHONE_NUMBER>,
		PrevBlockHash: nil,
		SheetHash:     GenesisSheetHash,
		TrieHash:      NewTxTrie(txs).TrieRoot(),
		Target:        genesisTarget.Bytes(),
		Nonce:         genesisBlockNonce.Bytes(),
	}

	return &Block{
		Network: Network,
		Header:  header,
		Sheet:   GetGenesisSheet(),
		Txs:     txs,
	}
}

// CalculateHash will help you get the hash of block
func (m *Block) CalculateHash() ([]byte, error) {
	raw, err := utils.Proto.Marshal(m)
	if err != nil {
		return nil, err
	}
	hash := sha3.Sum256(raw)
	return hash[:], nil
}

var GenesisBlockHash, _ = GetGenesisBlock().CalculateHash()

Block is a protobuf message, and these codes are in the same folder with types.pb.go.
I fix the bug by changing var GenesisBlockHash, _ = GetGenesisBlock().CalculateHash() to func GetGenesisBlockHash() []byte
func GetGenesisBlockHash() []byte {
	hash, _ := GetGenesisBlock().CalculateHash()
	return hash
}

then it works fine as before.

But, is there any method to safely create a global variable as I did before? That would be more convenient. This hash will be used many times and I dont wanna calculate it everytime I use the func.


Create IG route for International payment consent

Description

[ ] Create Route on Ig routes project openbanking-demo routes
[ ] Create if necessary specific groovy script to implement on IG the international payment consent.
[ ] Methods to support: GET, POST

Endpoints

Endpoints

Acceptance criteria

[ ] The route is deployed in Ig with no errors.
[ ] Proper response expected by the spec
[ ] Errors expected match with the OBIE specs
[ ] Route documented

[ ] Route source commented
[ ] Add the route documentation to the wiki route section

Hey team! Please add your planning poker estimate with ZenHub @andra-racovita @mariantiris


Linux hangs was fixed but created another issue which is terminal not being refreshed on resizing.

Since the cursor is set to the application the Curses.CheckWinChange method always return the same values for the LINES and COLS, not detecting windows resizing.
On WSL:

On Ubuntu:

On macOS:

Since the cursor is set to the application the Curses.CheckWinChange method always return the same values for the LINES and COLS, not detecting windows resizing.

The main problem is even I can set the lines and columns to the right sizes, the Curses.refresh will always uses the the initial values. Any thoughts about this?

Fixed with #1272


File open and search hangs, M2 Macbook Pro, Python Extension

Does this issue occur when all extensions are disabled?: No
A lot of poking around and disabling extensions and it appears to be caused by the Microsoft Python extension.

VS Code Version:

Version: 1.78.2 (Universal)
Commit: b3e4e68a0bc097f0ae7907b217c1119af9e03435
Date: 2023-05-10T14:44:45.204Z
Electron: 22.5.2
Chromium: 108.0.5359.215
Node.js: 16.17.1
V8: <IP_ADDRESS>-electron.0
OS: Darwin arm64 22.4.0
Sandboxed: No

OS Version: 13.3.1 (a) (22E772610a)

Steps to Reproduce:

Have a small sized codebase (100ish files)
Open files using quick open

Files take up to 20-30 seconds to open sometimes, at random. Unclear what it's doing. Can reproduce by switching between a set of 3 files on quick open - after switching between files 5-10 times, a file open hangs and I see a progress bar. Sometimes it succeeds in opening in 1s, sometimes it takes 30-60s.
Tried excluding node_modules folder from file search and did not help.

Apologies for the delayed response. First, try the pre-release version of the extension in a day:

It could Python ext or some other extension dependent on Python as well. Try disabling the Jupyter extension, leaving Python enabled and see if you can repro the issue. If that doesn't work, please provide the list of extensions installed and lastly the Python debug logs:

Run Developer: Set log level command

Select Python -> Select Trace

Run Developer: Reload Window command

Provide the output:

Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)

XXX

After switching to pre release version, I attempted to reproduce and could not. So it looks like it was fixed! Could you link to the pr that fixed it?
I will let you know if the issue pops up again.
Potentially related issue that was happening before switching the python extension - when I hit save, sometimes it doesn't work - the file doesn't get updated. Not sure if it's just slow to save, or if it's completely failing to save. When this happens I just have to switch to another editor, really makes it unusable. Thoughts on whether that might be related to this one?

hmm - actually, the issue still appears, but it's not as bad? took about 2s to load a file. will keep trying it out... i'll post profiling info if i get it to happen again

Thanks, it could be that VS Code or Jupyter or others fixed it, harder to pinpoint the fix. 2 secs is probably fine, let us know if it happens again and if you could demonstrate that it happens due to the Python extension (and not others dependent on Python such as Jupyter, Black formatter, etc.). Closing for now.

Hey, it looks like it was actually not fixed. Figuring out how to follow your debug instructions. I also do not use Jupyter. The issue happens with just the Python extension alone.

Can you send me the information asked earlier? https://github.com/microsoft/vscode-python/issues/21268#issuecomment-1644947910

OK, issue occurred when opening the user_friendly_service.py file:
2023-07-26 01:22:15.850 [info] Success: no issues found in 1 source file
2023-07-26 01:22:20.646 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/controllers/checkout_controller.py
2023-07-26 01:22:20.646 [info] cwd: .
2023-07-26 01:22:20.981 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/controllers/checkout_controller.py
2023-07-26 01:22:22.744 [info] ##########Linting Output - mypy##########

2023-07-26 01:22:22.744 [info] main/controllers/checkout_controller.py:8: error: Unused "type: ignore" comment
Found 1 error in 1 file (checked 1 source file)
2023-07-26 01:22:58.000 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/views.py
2023-07-26 01:22:58.000 [info] cwd: .
2023-07-26 01:23:04.472 [info] ##########Linting Output - mypy##########

2023-07-26 01:23:04.472 [info] main/views.py:7: error: Unused "type: ignore" comment
main/views.py:8: error: Unused "type: ignore" comment
Found 2 errors in 1 file (checked 1 source file)
2023-07-26 01:29:36.978 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/views.py
2023-07-26 01:29:36.978 [info] cwd: .
2023-07-26 01:29:37.321 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/views.py
2023-07-26 01:29:39.448 [info] ##########Linting Output - mypy##########

2023-07-26 01:29:39.448 [info] main/views.py:7: error: Unused "type: ignore" comment
main/views.py:8: error: Unused "type: ignore" comment
Found 2 errors in 1 file (checked 1 source file)
2023-07-26 01:29:48.994 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/views.py
2023-07-26 01:29:48.994 [info] cwd: .
2023-07-26 01:29:51.468 [info] ##########Linting Output - mypy##########

2023-07-26 01:29:51.468 [info] main/views.py:7: error: Unused "type: ignore" comment
main/views.py:8: error: Unused "type: ignore" comment
Found 2 errors in 1 file (checked 1 source file)
2023-07-26 01:30:23.090 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/controllers/results_controller.py
2023-07-26 01:30:23.090 [info] cwd: .
2023-07-26 01:30:25.189 [info] ##########Linting Output - mypy##########

2023-07-26 01:30:25.189 [info] main/controllers/results_controller.py:8: error: Unused "type: ignore" comment
main/controllers/results_controller.py:11: error: Unused "type: ignore" comment
main/controllers/results_controller.py:12: error: Unused "type: ignore" comment
Found 3 errors in 1 file (checked 1 source file)
2023-07-26 01:33:36.338 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/views.py
2023-07-26 01:33:38.696 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/views.py
2023-07-26 01:33:38.698 [info] cwd: .
2023-07-26 01:33:38.701 [info] ##########Linting Output - mypy##########

2023-07-26 01:33:38.701 [info]
2023-07-26 01:33:38.704 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/views.py
2023-07-26 01:33:38.704 [info] cwd: .
2023-07-26 01:33:39.026 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/views.py
2023-07-26 01:33:41.148 [info] ##########Linting Output - mypy##########

2023-07-26 01:33:41.148 [info] main/views.py:7: error: Unused "type: ignore" comment
main/views.py:8: error: Unused "type: ignore" comment
Found 2 errors in 1 file (checked 1 source file)
2023-07-26 01:36:01.541 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/views.py
2023-07-26 01:36:06.672 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/views.py
2023-07-26 01:40:13.955 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/views.py
2023-07-26 01:40:13.956 [info] cwd: .
2023-07-26 01:40:14.298 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/views.py
2023-07-26 01:40:16.427 [info] ##########Linting Output - mypy##########

2023-07-26 01:40:16.427 [info] main/views.py:7: error: Unused "type: ignore" comment
main/views.py:8: error: Unused "type: ignore" comment
Found 2 errors in 1 file (checked 1 source file)
2023-07-26 01:40:36.199 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/views.py
2023-07-26 01:40:59.253 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/views.py
2023-07-26 01:40:59.253 [info] cwd: .
2023-07-26 01:40:59.639 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/views.py
2023-07-26 01:41:01.709 [info] ##########Linting Output - mypy##########

2023-07-26 01:41:01.709 [info] main/views.py:7: error: Unused "type: ignore" comment
main/views.py:8: error: Unused "type: ignore" comment
Found 2 errors in 1 file (checked 1 source file)
2023-07-26 01:42:02.078 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/views.py
2023-07-26 01:42:39.218 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/views.py
2023-07-26 01:42:39.218 [info] cwd: .
2023-07-26 01:42:39.498 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/views.py
2023-07-26 01:42:45.664 [info] ##########Linting Output - mypy##########

2023-07-26 01:42:45.664 [info] main/views.py:7: error: Unused "type: ignore" comment
main/views.py:8: error: Unused "type: ignore" comment
Found 2 errors in 1 file (checked 1 source file)
2023-07-26 01:42:51.470 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/views.py
2023-07-26 01:42:51.470 [info] cwd: .
2023-07-26 01:42:51.941 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/views.py
2023-07-26 01:42:53.940 [info] ##########Linting Output - mypy##########

2023-07-26 01:42:53.940 [info] main/views.py:7: error: Unused "type: ignore" comment
main/views.py:8: error: Unused "type: ignore" comment
Found 2 errors in 1 file (checked 1 source file)
2023-07-26 01:43:02.160 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/views.py
2023-07-26 01:43:09.869 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/views.py
2023-07-26 01:43:09.869 [info] cwd: .
2023-07-26 01:43:10.192 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/views.py
2023-07-26 01:43:16.263 [info] ##########Linting Output - mypy##########

2023-07-26 01:43:16.263 [info] main/views.py:7: error: Unused "type: ignore" comment
main/views.py:8: error: Unused "type: ignore" comment
Found 2 errors in 1 file (checked 1 source file)
2023-07-26 11:19:49.250 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/scripts/generate_care_paths.py
2023-07-26 11:19:49.250 [info] cwd: .
2023-07-26 11:19:57.050 [info] ##########Linting Output - mypy##########

2023-07-26 11:19:57.050 [info] Success: no issues found in 1 source file
2023-07-26 11:20:26.593 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/scripts/rerun_provider_data.py
2023-07-26 11:20:26.593 [info] cwd: .
2023-07-26 11:20:30.286 [info] ##########Linting Output - mypy##########

2023-07-26 11:20:30.286 [info] main/scripts/rerun_provider_data.py:5: error: Unused "type: ignore" comment
main/scripts/rerun_provider_data.py:7: error: Unused "type: ignore" comment
Found 2 errors in 1 file (checked 1 source file)
2023-07-26 11:22:11.728 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/views.py
2023-07-26 11:22:11.728 [info] cwd: .
2023-07-26 11:22:14.331 [info] ##########Linting Output - mypy##########

2023-07-26 11:22:14.331 [info] main/views.py:7: error: Unused "type: ignore" comment
main/views.py:8: error: Unused "type: ignore" comment
Found 2 errors in 1 file (checked 1 source file)
2023-07-26 11:22:54.608 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/constants/medical.py
2023-07-26 11:22:54.608 [info] cwd: .
2023-07-26 11:22:56.325 [info] ##########Linting Output - mypy##########

2023-07-26 11:22:56.325 [info] Success: no issues found in 1 source file
2023-07-26 11:32:56.718 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/views.py
2023-07-26 11:32:56.718 [info] cwd: .
2023-07-26 11:32:59.127 [info] ##########Linting Output - mypy##########

2023-07-26 11:32:59.127 [info] main/views.py:7: error: Unused "type: ignore" comment
main/views.py:8: error: Unused "type: ignore" comment
Found 2 errors in 1 file (checked 1 source file)
2023-07-26 11:33:42.654 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/controllers/checkout_controller.py
2023-07-26 11:33:42.654 [info] cwd: .
2023-07-26 11:33:44.679 [info] ##########Linting Output - mypy##########

2023-07-26 11:33:44.679 [info] main/controllers/checkout_controller.py:8: error: Unused "type: ignore" comment
Found 1 error in 1 file (checked 1 source file)
2023-07-26 11:35:32.904 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/repositories/classification_search_conditional.py
2023-07-26 11:35:32.904 [info] cwd: .
2023-07-26 11:35:33.000 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/controllers/checkout_controller.py
2023-07-26 11:35:33.000 [info] cwd: .
2023-07-26 11:35:33.338 [info] Discover tests for workspace name: certainlyhealth - uri: /Users/daryl/certainlyhealth/django/main/controllers/checkout_controller.py
2023-07-26 11:35:35.006 [info] ##########Linting Output - mypy##########

2023-07-26 11:35:35.006 [info] main/repositories/classification_search_conditional.py:3: error: Unused "type: ignore" comment
Found 1 error in 1 file (checked 1 source file)
2023-07-26 11:35:35.289 [info] ##########Linting Output - mypy##########

2023-07-26 11:35:35.289 [info]
2023-07-26 11:39:05.256 [info] > conda run -n certainly --no-capture-output python ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2023.12.0/pythonFiles/linter.py -p mypy ~/opt/anaconda3/envs/certainly/bin/mypy.sh --follow-imports=silent --ignore-missing-imports --show-column-numbers --no-pretty ./django/main/adapters/user_friendly_service.py
2023-07-26 11:39:05.256 [info] cwd: .
2023-07-26 11:39:06.904 [info] ##########Linting Output - mypy##########

2023-07-26 11:39:06.904 [info] Success: no issues found in 1 source file

This doesn't look the debug logs, please make sure to use Developer: Set log level command to set trace as advised earlier. Also, it would be nice if you could provide list of installed extensions.

Can't figure out how to run developer set log level - can you point me to something? I'm on a mac

Use Shift + Command + P to open command palette and type out the command.


Provide IStateDB

Similar to https://github.com/jupyterlite/jupyterlite/pull/287, so extensions like jupyterlab-tour work in RetroLab.

Looking good on Binder after a pip install jupyterlab-tour and page reload:


very first step to include line broadening

I still have to include the real flesh of the line broadening, but I'm currently blocked by the fact that I don't see how to apply lilne broadening to the demo spectra.

@djeanner
i merge you changes in the master branch.


PhantomJS is crashing on PayPal checkout site

Which version of PhantomJS are you using? Tip: run phantomjs --version.
1.3.0

What steps will reproduce the problem?
I try to test a web shop checkout process that is using PayPal as payment provider. When I access the PayPal checkout page and try to login, the browser is crashing.
I just fill in the credentials and click on the login button.
I run this test on a Atlassian Bamboo build server. What is a bit weird is the fact that if I run the same test in my local IDE it works fine!
First I thought, that I probably have to increase the memory, but I do not exactly know if this change really has an effect as the browser was still crashing. I set the following: JAVA_OPTS=-Xms2048m -Xmx2048m

Which operating system are you using?
CentOS Linux release 7.3.1611

Did you use binary PhantomJS or did you compile it from source?
Binary downloaded from Maven repo.

Please provide any additional information below.
build_crash.dmp.zip

I think that paypal have protection from PhantomJS automatization tool. PhantomJS not suitable for this goals.

Due to our very limited maintenance capacity (see #14541 for more details), we need to prioritize our development focus on other tasks. Therefore, this issue will be closed. In the future, if we see the need to attend to this issue again, then it will be reopened.
Thank you for your contribution!


modified ACK frame to include bit value and output NAK as text if no …

The ACK frame previously always shows ACK regardless of the bit status.
I have:

changed the bubble text to reflect the status of the bit,
included a value for the bit to allow HLA to pick up the ACK state

Thank you for your contribution.


ERROR IN RUN THE FILE NSEOPTIONCHAIN DATA.PY

Dear Sir,
This is for a change of URL structure. NSE has changed it. I can rewrite
it. But unfortunately I am busy with another project. Will do it later.
On Sun, Nov 7, 2021 at 9:39 PM mangeshsable1975 @.***>
wrote:

[image: ERROR]
https://user-images.githubusercontent.com/67979855/140652729-4ce88929-3cac-4d02-8064-c84f746f12e9.jpg
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/saikatsingha/NseOptionChain_Data/issues/1, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABRDUNJQXQX7T2NTD7EA3V3UK2QEHANCNFSM5HQ7BK5A
.

--
Thanks
Saikat


Json Script

When trying to Open the application theirs a Json Script error and the config page is not showing up anymore?

Plz Let me know if you are also getting the error message or if It gets fixed.

I have the same problem

Same problem here

I got same problem too

Yep same issue, with the exception of the config page not showing. The page is showing but not installing any programs. The tweaks page is working just fine tho. I'm on windows 10 x64.

Same issue as reported here: #1545

should be fixed in #1556 try relaunching now.


Add Feature Parameters to Count Permission Set Assignments

Critical Changes
Changes

We updated PMM Feature Telemetry to include a count of Users assigned the PMM: Deliver permission, and a count of Users assigned the PMM: Manage permission. No personally identifiable information is collected through PMM Feature Telemetry. Read more about PMM Feature Telemetry. (This has been backed out of the current release).

Issues Closed
New Metadata
Deleted Metadata
Definition of Done
Refer to Asteroids DoD document to see any additional details for the items below

[ ] Place holder data is incorporated (Refer to Case Management Sample Data document)
[ ] Base axe-core JEST test included for any new LWC (No critical violations)
[ ] CRUD/FLS is enforced in Apex
[ ] Permission sets are updated to account for CRUD/FLS for new object metadata
[ ] All modified classes are unit tested (Apex) at 100% coverage
[ ] UX approval or UX not necessary
[ ] PR contains draft release notes
[ ] Attach work item to the pull request with Lurch **Lurch:attach W-000000 or **Lurch:add
[ ] All acceptance criteria have been met

[ ] Developer
[ ] Code Reviewer
[ ] QA

[ ] QE story level testing completed

W-7844320


[RESTEASY-2820] Clients running in a resource method throw safer WebA…

…pplicationException (#2632)
[RESTEASY-2820] Removed smallrye reference from resteasy-client-api POM.

Notes:

This is an almost entirely clean cherry-pick of the RESTEASY-2781 change, for the purpose of backporting to 4.4
I agree with the Apache License 2.0 terms

@ronsigal Please let me know if there's anything else is needed for this PR!

Hi @nikosmoum,
I've got a couple of other releases due soon, but I hope to get to this soon, probably late next week. Haven't forgotten, though. :)
-Ron

Hi @ronsigal, any update on when this might be available?
Thanks,
Nikos

Hi @nikosmoum,
Sorry, the release of 3.15.0.Final was more involved than I expected. Barring surprises, I'll try to do this this week.
-Ron

@ronsigal Thanks!

Hey @nikosmoum, you're very welcome. ;)

Hey @nikosmoum, you're very welcome. :)

Sorry, the release of 3.15.0.Final was more involved than I expected. Barring surprises, I'll try to do this this week.

Can this fix be cherry-picked to the 3.15.x branch?


tooth neck

abnormal tooth neck morphology
DEF: any structural anomaly of the slightly constricted part of a tooth between the crown and the root
SYN: abnormal cervix dentis morphology
SYN: abnormal collum dentis morphology
SYN: abnormal dental neck morphology
SYN: abnormal tooth cervix morphology
SOURCES: UBERON:0015181, https://medical-dictionary.thefreedictionary.com/tooth+neck
Child term:
abnormal cementoenamel junction morphology
DEF: any anomaly of the interface between the cementum and enamel at the cervical region of a tooth; it represents the anatomic limit or line of division between the crown and root surface
SYN: abnormal cemento-enamel junction morphology
SYN: abnormal cervical line morphology
SYN: abnormal CEJ morphology
SOURCE: https://medical-dictionary.thefreedictionary.com/cementoenamel+junction

Added:
abnormal tooth neck morphology MP:0030503
abnormal cementoenamel junction morphology MP:0030504


Feature/cu k94bc5 create debug UI

Implemented the god mode UI
https://user-images.githubusercontent.com/6886356/120252401-b39fd480-c284-11eb-95cb-dab05992a9f7.mp4

Task linked: CU-k94bc5 Create debug/god mode UI

Updated image of the God Mode UI.
Ps. Invincible mode, No cooldown & one-shoot everything toggles are going to be developed in other tickets


Generalization of Traffic Scenario 04

Description
Generalization of Traffic scenario 04:
Other actors are spawning with respect to the location of ego vehicle's location.
Code has been checked against pep8 and pylint.

Fixes #
Where has this been tested?

Platform(s): Linux
Python version(s):  2.7
CARLA version: 0.9.4

Possible Drawbacks

Due to lane width issue in town 03
Possible spawning issue in some locations in Town05

This change is

Any updates?

Any updates?

We have prepared a scenario helper file and have moved the actor spawning login into it.
Now rebase is going on with new changes of wait behaviour.

Reviewable status: 0 of 8 files reviewed, 6 unresolved discussions (waiting on @akki6843 and @fabianoboril)

scenario_runner.py, line 138 at r2 (raw file):

    def prepare_ego_vehicle(self, config):
        """
<<<<<<< HEAD

Please properly merge your changes.

Solved merge conflicts.
Done

Reviewable status: 0 of 8 files reviewed, 6 unresolved discussions (waiting on @akki6843, @fabianoboril, and @odunkel)

scenario_runner.py, line 138 at r2 (raw file):

We have prepared a scenario helper file and have moved the actor spawning login into it.
Now rebase is going on with new changes of wait behaviour.

Quoted 14 lines of code…

Fixed
extremely sorry for this one

Reviewable status: 0 of 8 files reviewed, 7 unresolved discussions (waiting on @akki6843, @fabianoboril, and @odunkel)

scenario_runner.py, line 242 at r2 (raw file):

                    self.prepare_actors(config, scenario_class)
>>>>>>> changed required scenario runner.
                    scenario = scenario_class(self.world,

another merge conflict residual. Please fix it.

Done


[Bug]: CreateRelatedRecord and Translatable

What happened?
Hi, I have a CreateRelatedRecord which uses the official Spatie Translatable plugin (https://filamentphp.com/plugins/filament-spatie-translatable).
How can I implement this for the CreateRelatedRecord? I can't add the LocaleSwitcher to the CreateRelatedRecord class, because the ParentResource doesn't have any translations.
How to reproduce the bug
Have a nested resource where the nested resource has translatable properties.
ParentResource -> NestedResource (use Translatable)
Package Version
1.0.0-beta.3
PHP Version
8.3.3
Laravel Version
10.10
Which operating systems does with happen with?
macOS
Notes
No response

Hi @vblinden, thanks for the bug report! I've added a new Guava\FilamentNestedResources\Concerns\CreateRelatedRecord\Translatable class for the CreateRelatedRecord page, please use this one and it'll use the correct resource. It's included in 1.0.0-beta.4


Another function expression

Right now, SLAP has this:
let func = define (x) {
    println(x);
};

But it's kind of awkward to use curly braces, {...}, if we just wanted one expression inside the body.
So, I might add another function expression (anonymous function, lambda) that can only have one expression in the body and may look something like this:
let func = ~(x) -> println(x);
# similar to
# let func = define (x) { println(x); };

This new feature may come in handy when we just want to print each content in a list using forEach with minimal code.
import std;

let names = ["bichanna", "nobu", "noby", "Nobuharu Shimazu"];

forEach(names) <- ~(name) -> println(name);
# same as
# forEach(names) <- define (name) { println(name); };

#{
output:
bichanna
nobu
noby
Nobuharu Shimazu
}#

I think ~(x): println(x); is better because I don't want to confuse -> in the tilde function with the -> syntax sugar.