io.podman.Ps varlink call slow

Is this a BUG REPORT or FEATURE REQUEST? (leave only one on its own line)
/kind bug
Description

Calling the io.podman.Ps API over varlink is excessively slow, taking approximately 30 seconds, the same behavior is exhibited with both rooted and rootless setup. Also with the all flag set to true would expect to see containers in a stopped state these are missing.
Steps to reproduce the issue:

podman varlink --timeout 0 unix:$XDG_RUNTIME_DIR/io.podman

varlink call unix:$XDG_RUNTIME_DIR/io.podman/io.podman.Ps '{"all": true}'

Describe the results you received:
JSon document returned with only running containers listed, takes approximately 30 seconds for the result to be returned.
Describe the results you expected:
JSon document with all container listed, returned with a similar processing time to that of running 'podman ps -a'
Additional information you deem important (e.g. issue happens only occasionally):
If running the podman varlink interface is started with --log-level=debug set it looks from the debug output that call is descending into each overlay to get information however running 'podman --log-level=debug ps -a' does not show these filesystem interactions.
Output of podman version:
Version:            1.4.4
RemoteAPI Version:  1
Go Version:         go1.12.7
OS/Arch:            linux/amd64

Output of podman info --debug:
debug:
  compiler: gc
  git commit: ""
  go version: go1.12.7
  podman version: 1.4.4
host:
  BuildahVersion: 1.9.0
  Conmon:
    package: podman-1.4.4-4.fc30.x86_64
    path: /usr/libexec/podman/conmon
    version: 'conmon version 1.0.0-dev, commit: 164df8af4e62dc759c312eab4b97ea9fb6b5f1fc'
  Distribution:
    distribution: fedora
    version: "30"
  MemFree:<PHONE_NUMBER>6
  MemTotal:<PHONE_NUMBER>0
  OCIRuntime:
    package: runc-1.0.0-93.dev.gitb9b6cc6.fc30.x86_64
    path: /usr/bin/runc
    version: |-
      runc version 1.0.0-rc8+dev
      commit: e3b4c1108f7d1bf0d09ab612ea09927d9b59b4e3
      spec: 1.0.1-dev
  SwapFree:<PHONE_NUMBER>2
  SwapTotal:<PHONE_NUMBER>2
  arch: amd64
  cpus: 8
  hostname: steve-linux
  kernel: 5.2.6-200.fc30.x86_64
  os: linux
  rootless: true
  uptime: 42h 18m 1.25s (Approximately 1.75 days)
registries:
  blocked: null
  insecure:
  - steve-linux.lan:5000
  search:
  - steve-linux.lan:5000
  - docker.io
  - registry.fedoraproject.org
  - quay.io
  - registry.access.redhat.com
  - registry.centos.org
store:
  ConfigFile: /home/steve/.config/containers/storage.conf
  ContainerStore:
    number: 2
  GraphDriverName: overlay
  GraphOptions:
  - overlay.mount_program=/usr/bin/fuse-overlayfs
  GraphRoot: /var/home/steve/.local/share/containers/storage
  GraphStatus:
    Backing Filesystem: extfs
    Native Overlay Diff: "false"
    Supports d_type: "true"
    Using metacopy: "false"
  ImageStore:
    number: 4
  RunRoot: /run/user/1000
  VolumePath: /var/home/steve/.local/share/containers/storage/volumes

Additional environment details (AWS, VirtualBox, physical, etc.):
Physical box running Fedora SilverBlue 30
Output of uname -a
Linux steve-linux 5.2.6-200.fc30.x86_64 #1 SMP Mon Aug 5 13:20:47 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

varlink --version
18
rpm -qf `which varlink`
libvarlink-util-18-1.fc30.x86_64

how many containers are in the store?

@baude Didn't we resolve an issue earlier where --size was unconditionally true for ps over Varlink? That sounds like a likely culprit

@baude Currently there are only 2 container in the store
@mheon If I add --size to ps then it takes the same amount of time to execute as it does via the varlink interface, also --log-level=debug output matches.  unfortunately there is no size option in PsOpts in v1.4.4, will look out for a new release.

still, 30 seconds even with size is suggesting something else.  and the reporter is saying rooted and rootless. could be a lot of things at this point.

My apologies, i have re-timed rooted this morning and there is no problem with rooted. Don't know how i managed to screw up the timing of that quite so much.  So this is only effecting a rootless setup.
Timings for the rootless calls
time varlink call unix:$XDG_RUNTIME_DIR/podman/io.podman/io.podman.Ps '{"all": true}'
{
  "containers": [
    ...
    ...
  ]
}
varlink call unix:$XDG_RUNTIME_DIR/podman/io.podman/io.podman.Ps   0.00s user 0.00s system 0% cpu 37.071 total

time podman ps -a --size
CONTAINER ID  IMAGE                                 COMMAND               CREATED       STATUS           PORTS                   NAMES            SIZE
...
...
podman ps -a --size  8.89s user 13.79s system 61% cpu 36.976 total

time podman ps -a
CONTAINER ID  IMAGE                                 COMMAND               CREATED       STATUS           PORTS                   NAMES
...
...
podman ps -a  0.05s user 0.03s system 112% cpu 0.073 total

With 11 running containers, I did a brief test and the results we subsecond.
...
real	0m0.019s
user	0m0.001s
sys	0m0.004s

@baude what version are you running 1.4.4 or 1.5.0?

1.5 (upstream master)

have finally managed to get 1.5 to install on silverblue, working as expected now.  Thank you both for your help.


I need some help with paths

Issue Description:
I’ve been troubleshooting for an hour and I’m using WSL. I’ve downloaded the models and placed them in the following folder:
/home/ioakeim/Llama_3_2_11B_Vision_Instruct_Abliterate_GGUF/

However, I keep encountering the following error:
gio: http://localhost:8501: Operation not supported
Repo id must be in the form 'repo_name' or 'namespace/repo_name': '/home/ioakeim/Llama_3_2_11B_Vision_Instruct_Abliterate'. Use `repo_type` argument if needed.
ERROR:hf-to-gguf:Error: /home/ioakeim/Llama_3_2_11B_Vision_Instruct_Abliterate/Llama_3_2_11B_Vision_Instruct_Abliterate is not a directory

Here is how it in the GUI (what am I missing)

The issue seems to be that the tool is looking in the wrong directory (/home/ioakeim/Llama_3_2_11B_Vision_Instruct_Abliterate) instead of the one where I’ve downloaded the models (/home/ioakeim/Llama_3_2_11B_Vision_Instruct_Abliterate_GGUF/). I’m not sure how to resolve this.
Questions:

Why is it trying to access the wrong directory?
How can I fix this path issue?
Could the tool automatically create the necessary directory if it doesn’t already exist instead of failing or requiring me to create it manually?

Thanks in advance for any suggestions or help!

did you manage to fix it?

nope


⚠ Bofrost.at has degraded performance

In 73d5a7b, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1857 ms

Resolved: Bofrost.at performance has improved in 571cb75.


Fix(dropdown) transition shifts in cascade dropdown with anchor option

close https://github.com/TuSimple/naive-ui/issues/1600


FileNotFoundError and subprocess.CalledProcessError in dreambooth colab

I'm trying to use dreambooth on colab, I use SD 1.5 as a base model and 1024px for resolution,  suddenly I got this error during the training process (I tried many times)
Traceback (most recent call last): File "/content/diffusers/examples/dreambooth/train_dreambooth.py", line 803, in  main() File "/content/diffusers/examples/dreambooth/train_dreambooth.py", line 665, in main for step, batch in enumerate(train_dataloader): File "/usr/local/lib/python3.10/dist-packages/accelerate/data_loader.py", line 357, in iter next_batch = next(dataloader_iter) File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/dataloader.py", line 633, in next data = self._next_data() File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/dataloader.py", line 677, in _next_data data = self._dataset_fetcher.fetch(index) # may raise StopIteration File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/_utils/fetch.py", line 51, in fetch data = [self.dataset[idx] for idx in possibly_batched_index] File "/usr/local/lib/python3.10/dist-packages/torch/utils/data/_utils/fetch.py", line 51, in  data = [self.dataset[idx] for idx in possibly_batched_index] File "/content/diffusers/examples/dreambooth/train_dreambooth.py", line 356, in getitem instance_image = Image.open(path) File "/usr/local/lib/python3.10/dist-packages/PIL/Image.py", line 2975, in open fp = builtins.open(filename, "rb") FileNotFoundError: [Errno 2] No such file or directory: '/content/gdrive/MyDrive/Fast-Dreambooth/Sessions/TheFuturee/instance_images/owalnfiwp-(495).png' ' Progress:|███████ | 27% 1610/6000 [2:15:28<6:09:25, 5.05s/it, loss=0.00444, lr=1.46e-6] Traceback (most recent call last): File "/usr/local/bin/accelerate", line 8, in  sys.exit(main()) File "/usr/local/lib/python3.10/dist-packages/accelerate/commands/accelerate_cli.py", line 43, in main args.func(args) File "/usr/local/lib/python3.10/dist-packages/accelerate/commands/launch.py", line 837, in launch_command simple_launcher(args) File "/usr/local/lib/python3.10/dist-packages/accelerate/commands/launch.py", line 354, in simple_launcher raise subprocess.CalledProcessError(returncode=process.returncode, cmd=cmd) subprocess.CalledProcessError: Command '['/usr/bin/python3', '/content/diffusers/examples/dreambooth/train_dreambooth.py', '--offset_noise', '--image_captions_filename', '--train_only_unet', '--save_starting_step=500', '--save_n_steps=0', '--Session_dir=/content/gdrive/MyDrive/Fast-Dreambooth/Sessions/TheFuturee', '--pretrained_model_name_or_path=/content/stable-diffusion-v1-5', '--instance_data_dir=/content/gdrive/MyDrive/Fast-Dreambooth/Sessions/TheFuturee/instance_images', '--output_dir=/content/models/TheFuturee', '--captions_dir=/content/gdrive/MyDrive/Fast-Dreambooth/Sessions/TheFuturee/captions', '--instance_prompt=', '--seed=278227', '--resolution=1024', '--mixed_precision=fp16', '--train_batch_size=1', '--gradient_accumulation_steps=1', '--gradient_checkpointing', '--use_8bit_adam', '--learning_rate=2e-06', '--lr_scheduler=linear', '--lr_warmup_steps=0', '--max_train_steps=6000']' returned non-zero exit status 1
Note* when I changed the resolution to be 512px for example I didn't get this error, so I need to know what is the problem

@loliana232 hi I wonder if you know what went wrong and how to fix it now. I ran into the same problem but my setting has been 512 px resolution all the time.

check your instance images and make sure you have enough drive space

@TheLastBen @ShashankInteli @chepy21 any solution ?? , I am into same problem I have been using image of 512px, 512 px but same issue please help!!


SNS Notification issues and unknown resource type error on c7n_mailer lambda with SQS

We are trying to send direct SNS topic from policy but it is not working for all the resources. We could able to write all the messages to SQS but when trying to generate notification using lambda function created by c7n_mailer we are getting "unknown resource type" error for few services.
('Unknown resource type', u'account')
('Unknown resource type', u'iam-group')
('Unknown resource type', u'cloudtrail')
('Unknown resource type', u'vpc')
('Unknown resource type', u'rds-snapshot')
Is there any simple way to send notifications for all types of resources.

this has more to do with the formatting function in the mailer, then any intrinsic capability. the formatting function is just a helper function in the jinja templates, it can be extended with the additional types, or alternatively use a custom template that references the relevant attributes of those resources.

Thanks Kapil,
Thanks for quick response, It seems working with default.html template but
message coming in raw html, is there a way to get email as standard html
instead of raw html message.
On Mon, Jul 24, 2017 at 1:02 PM, Kapil Thangavelu<EMAIL_ADDRESS>wrote:

this has more to do with the formatting function in the mailer, then any
intrinsic capability. the formatting function is just a helper function in
the jinja templates, it can be extended with the additional types, or
alternatively use a custom template that references the relevant attributes
of those resources.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/capitalone/cloud-custodian/issues/1431#issuecomment-317487471,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AXpl2E_-Axc6OMCSkNvQ-aeMS9xtDFCPks5sRM4hgaJpZM4OhaSI
.

if your template has .html in the extension it should be sent as html


[Feature Request] Clean Manga Titles

Why/User Benefit/User Problem
Current titles are too complicate. (Nhentai)
example : (C92) [Inariya (Inari)] Kyoudai ni Okeru Seikoushou no Kiroku [English] [desudesu]
What/Requirements
It would be better if we had an option for clean titles.
example : Kyoudai ni Okeru Seikoushou no Kiroku
(Tachiyomi app clean titles but it cause some problems like empty titles. I opened an issue in tachiyomi extensions for this but no one respond yet.)

Duplicate of #3 , which is already implemented

Hmm, though this gives me a idea, maybe I could try to implement a quick clean for E/Exh + nHentai + hitomi

I saw the other request but it's not exact same with this. Editing one by one could solve this but it will take too much time if you have a lot of mangas.

Added with https://github.com/jobobby04/TachiyomiSY/commit/44c9df8c9b0974e86bdf8f1c54b5097e7e5d18df
This will be closed when the next release happens

I tried and it works perfectly. Thank you very much.


New release?

The current tagged release is fairly old: https://github.com/myzhan/boomer/releases/tag/v1.6.0
Any chance of a new release?

Please use the master branch for new features. I will add new tags when locust makes a breaking change.


Missed actions with take when using put

So I've been struggling with trying to create an example for this and I haven't been able to do so, but I think the result of the saga monitor should be compelling enough to hopefully explain a bit about what I'm seeing.
I've been very careful in my app to avoid using blocking actions (like call) in the same saga as those that use take. And use helpers where I can. My understanding is that put is safe because it is non-blocking. However, I'm seeing an issue where a put appears to be taking so long to complete that it misses a subsequent take completely. To be fair, I could refactor my code to use actionChannels (this works quite well in this case). However it forces me to question my understanding of put and other places in my code where I use put and take together.
Here is the sagaMonitor which shows how I am missing a take because of the length of time it takes for the put to complete. Both sagas should get a SOCKET_PUSH, followed by a SOCKET_SEND_PARSE_RESPONSE, and then a final SOCKET_PUSH, but you can see the second one missed the SOCKET_SEND_PARSE_RESPONSE because the put took too long (185ms).

A little background info on my saga. The appSocketForwardParser has two types of messages it cares about SOCKET_PUSH and SOCKET_SEND_PARSE_RESPONSE. The SOCKET_PUSH come from another saga listening to a websocket onMessage and the SOCKET_SEND_PARSE_RESPONSE are dispatched via redux actions. Internally in the saga, we are building a map from to parse socket responses to redux actions, that can be added to dynamically with SOCKET_SEND_PARSE_RESPONSE messages which are then dispatched with put.
The only difference between appSocketForwardParser and appSocketForwardParserCopy is the following line which is the source of the put in the sagaMonitor:
yield put({ ...parsedAction, type: 'FOO' }); // original yield put({ ...parsedAction });

Essentially Im just clobbering the type of the parsedAction, so this redux action gets dispatched and nothing is "looking for it".
My guess right now is that put takes longer to return because this sets up a lot of initial data in my store and forces rendering of many components.
Thanks for the great, library and any help you can provide on this

Could you probably post code both of appSocketForwardParser and appSocketForwardParserCopy. I see there are some races involved and to better understand the flow it would be really helpful.

Sure...its a bit long but here goes:
export function* appSocketForwardParser(app, parser, forwardForApp = isForwardForApp(app),
  parseResponseForApp = isParseResponseForApp(app), parseFrame = parseAppFrame) {
  // Map from sequenceId to the parser responsible for it
  let parsersBySequence = {};
  while (true) {
    const { parseResponse, forward } = yield race({
      parseResponse: take(parseResponseForApp),
      forward: take(forwardForApp),
    });
    if (forward) {
      const payload = parseFrame(forward);
      let parsedAction;
      try {
        // If its a forward, check if there is a sequence and a parser for that sequence
        if (_.isNumber(payload.sequence)) {
          const parserForSequence = parsersBySequence[payload.sequence];
          if (parserForSequence) {
            parsedAction = parserForSequence(payload);
            parsersBySequence = _.omit(parsersBySequence, payload.sequence);
          } else {
            /* eslint-disable no-console */
            console.log('Received socket payload with sequence without parser, using default parser', payload);
            /* eslint-enable */
            parsedAction = parser(payload);
          }
        } else {
          parsedAction = parser(payload);
        }
      } catch (error) {
        yield put({ type: APP_SOCKET_PARSE_ERROR, error: true, payload: { error, payload } });
        continue; // eslint-disable-line no-continue
      }
      if (parsedAction) {
        yield put(parsedAction);
      } else {
        yield put({ type: APP_SOCKET_UNKNOWN_FRAME, error: true, payload: { payload } });
      }
    } else if (parseResponse) {
      const { payload: { sequence, parser: parserForSequence } } = parseResponse;
      if (_.isNumber(sequence) && _.isFunction(parserForSequence)) {
        parsersBySequence = {
          ...parsersBySequence,
          [sequence]: parserForSequence,
        };
      } else {
        console.error('Parse response request was invalid', parseResponse); // eslint-disable-line no-console
      }
    }
  }
}

export function* appSocketForwardParserCopy(app, parser, forwardForApp = isForwardForApp(app),
  parseResponseForApp = isParseResponseForApp(app), parseFrame = parseAppFrame) {
  // Map from sequenceId to the parser responsible for it
  let parsersBySequence = {};
  while (true) {
    const { parseResponse, forward } = yield race({
      parseResponse: take(parseResponseForApp),
      forward: take(forwardForApp),
    });
    if (forward) {
      const payload = parseFrame(forward);
      let parsedAction;
      try {
        // If its a forward, check if there is a sequence and a parser for that sequence
        if (_.isNumber(payload.sequence)) {
          const parserForSequence = parsersBySequence[payload.sequence];
          if (parserForSequence) {
            parsedAction = parserForSequence(payload);
            parsersBySequence = _.omit(parsersBySequence, payload.sequence);
          } else {
            /* eslint-disable no-console */
            console.log('Received socket payload with sequence without parser, using default parser', payload);
            /* eslint-enable */
            parsedAction = parser(payload);
          }
        } else {
          parsedAction = parser(payload);
        }
      } catch (error) {
        yield put({ type: APP_SOCKET_PARSE_ERROR, error: true, payload: { error, payload } });
        continue; // eslint-disable-line no-continue
      }
      if (parsedAction) {
         yield put({ ...parsedAction, type: 'FOO' }); // original yield put({ ...parsedAction });
      } else {
        yield put({ type: APP_SOCKET_UNKNOWN_FRAME, error: true, payload: { payload } });
      }
    } else if (parseResponse) {
      const { payload: { sequence, parser: parserForSequence } } = parseResponse;
      if (_.isNumber(sequence) && _.isFunction(parserForSequence)) {
        parsersBySequence = {
          ...parsersBySequence,
          [sequence]: parserForSequence,
        };
      } else {
        console.error('Parse response request was invalid', parseResponse); // eslint-disable-line no-console
      }
    }
  }
}

Thanks for looking into this!

Are you able to debug a little bit the saga internals? Crucial would be to check if and possibly why during your - yield put(parsedAction) there is a lock preventing from the effect being executed immediately. From what I see in the source code, the only reasoning I might come to is that - its locked for some reason and lock is lifted too late, so in the meantime websocket's onmessage callback is emiting the action you would expected race is already waiting for.
https://github.com/yelouafi/redux-saga/blob/dfefd046d70615c662971b10438c0881fe84503f/src/internal/asap.js#L5 - it would be the starting point for debugging. I would propose checking these:

if it is locked indeed
when the lock is taken down (what line is doing a flush and why)
when the lock was set up in the first place, before coming to the point of yield put(parsedAction)

I threw a few console logs in each function inside asap.js. Im not exactly sure 100% what Im looking for through. Could you explain a bit about when suspend and flush should be called? It does appear that during the put call isSuspended is true and there isn't a flush until much later.

One thing that is possibly interesting, is that in another saga there is a race of a couple different take calls. Its listening for the HARDHAT_OPEN_DATA redux action, and subsequently does the put of the APP_SOCKET_CONNECTED. It seems like the call to flush is occurring only after this finishes.

Hm, there is quite some things going on here and debugging it through this issue thread might be a rl long process ;) Could we maybe schedule some teamviewer session or smth to handle it?

Yeah definitely! I'll message you on gitter and we can set something up

Got fixed in https://github.com/yelouafi/redux-saga/issues/622

👍 looking forward to the next release


How could I run a demo wild video to see the visualization result

It‘s a great work!
And can you upload the The corresponding pre-trained model to evaluate any wild video and to see the visualization result if possible!
Best wishes!

Thanks for your interest!
Here are the steps to predict 3D pose (16 joints) from image/video:

Apply OpenPose  or AlphaPose  to get the detect 2D.
Then convert the detect 2D to 16 joints definition with a similar procedure as  prepare_data_3dhp.py .
Apply Savgol filter to smooth the 2D pose.
Preprocess the 2D pose with the same normalization as the 2D-3D pose model training.
Apply the 2D-3D pose model on 2D pose to get the 3D pose result.
Visualization the 3D pose result with code visualization.py

We are busy with other stuffs currently, we will update you once we have time to clean the code.
Hope this helps.
Thank you.

@Garfield-kh Thanks a lot for your prompt reply, I am a new at this field, I would try it by following this guide, maybe it would have some problems with test and hope to communicate with your team at your convenience!
Yours sincerely, Hu.

You are welcome~  :)

Hi, there is another suggest that if you can give the pre-trained model trained with the trajectory model like https://github.com/facebookresearch/VideoPose3D, the model would be better for visualization intuitively.
And Thanks again!

Thank you for the suggestion, will update you once we make it. ^-^

:)

Hi, the output  is relative to the 0 joint, how can I get the 0 joint's 3d location?

Hi, you may check this 3DMPPE_ROOTNET_RELEASE or VideoPose3D  root location prediction.

Ok, thank you for your reply.


Batch Email Sending

Postmark has an option for Batch Email sending.
It would be really good if you can add this feature to v3 so we can use Laravel 8 Mailer for our Newsletters.

That's an interesting concept. Not sure how it would work in Laravel yet, but I can definitely look into it. Just for reference, this is the part of the documentation you're referring to, correct?
https://postmarkapp.com/developer/user-guide/send-email-with-api/batch-emails

That's an interesting concept. Not sure how it would work in Laravel yet, but I can definitely look into it. Just for reference, this is the part of the documentation you're referring to, correct?
https://postmarkapp.com/developer/user-guide/send-email-with-api/batch-emails

Yes exactly.

FWIW I could really use this as well.
My thoughts on how it could work is by providing a facade to define either a mailable or postmark template, one or more email address, optionally define a message stream (default would be broadcast).
Something like this:
PostmarkBulk::mailable(new TosUpdatedMailable)->to(Users::all())->stream('legal-updates')->send();
I would try my hand at making this but honestly I don't know enough about how facades work to feel comfortable trying to build one or even knowing where to start for that matter.

+1


Unable to invalidate infinite query data in react native app

Describe the bug
I have implemented infinite scroll in react native app using flatlist and infinite query of react query. When i move to different screen, i make changes and invalidate the infinite query. it doesn't work. My dom still renders the same old data. I was checking we can refetch as well tried but it didn't seem to be working as well. Is there a solution for it. Can anyone provide refetching code pointer. Code sample to refetch a single page of infinite query data but on different screen after mutation.
Your minimal, reproducible example
can't publish code
Steps to reproduce
i haven't published code as of now
Expected behavior
i want to update dom after invalidating the data.
How often does this bug happen?
Every time
Screenshots or Videos
No response
Platform
android
react-query version
3.19.1
TypeScript version
No response
Additional context
No response

can't publish code

you can try to come up with a minimal example that fails. you don't have to show your code, and you don't have to connect to your api. The template is very clear that we cannot invest time if you don't invest the minimum time of reproducing the issue. The chances are high that there is an issue with your setup rather than with react-query.
Feel free to reopen once you have a reproduction.


better document for Microsoft.MentionEntityRecognizer

According to the implementation and test, this recognizer recognizes by text so it doesn't recognize mention entity.
As these names are same, we should update document to make this clear.

@xieofxie , please update this issue to include more detail about what you would like to see in the documents. Thanks.

@mrivera-ms I am sorry, document means comment in code here. Since we don't have document for Microsoft.MentionEntityRecognizer now (do we?)

@xieofxie are there any updates on this?

I see.. We add a https://github.com/microsoft/botbuilder-dotnet/blob/main/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Recognizers/EntityRecognizers/ChannelMentionEntityRecognizer.cs for mention class. Close now


[change-detector] not detecting changes since using errorfunc

think this might have been introduced with #108
don't have time to investigate, so going to do a quick fix in the meantime

it was actually an airtable issue, they weren't updating "LAst Modified"


[BUG] Merlin io - ModuleNotFoundError: No module named 'cudf._version'

This worked till yesterday and started throwing error today. any fix to this. NVTABULAR uses merlin and it doesnt work due to this. any way out.

@vivpra89 can I ask what did you change from yesterday to today? docker image? the GPU machine? the driver?

@vivpra89 I am closing this issue due to low activity. you can reopen it if you need to.


Test bitmap utils

Codecov Report

Merging #1 into master will increase coverage by 20.41%.
The diff coverage is 100%.

@@             Coverage Diff             @@
##           master       #1       +/-   ##
===========================================
+ Coverage   69.47%   89.88%   +20.41%
===========================================
  Files           7        8        +1
  Lines         321      445      +124
===========================================
+ Hits          223      400      +177
+ Misses         98       45       -53

Impacted Files
Coverage Δ

WCPhotoManipulatorTests/Helpers/UIImage+Testing.m
100% <100%> (ø)

WCPhotoManipulatorTests/BitmapUtilsTests.m
99.42% <100%> (+1.18%)
:arrow_up:

...toManipulatorTests/UIImage+PhotoManipulatorTests.m
92.3% <100%> (+1.39%)
:arrow_up:

WCPhotoManipulatorTests/FileUtilsTests.m
94.62% <100%> (ø)
:arrow_up:

WCPhotoManipulator/UIImage+PhotoManipulator.m
17.77% <0%> (+4.44%)
:arrow_up:

WCPhotoManipulator/BitmapUtils.m
98.7% <0%> (+66.23%)
:arrow_up:

Continue to review full report at Codecov.

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


Add Kotlin extension functions support

Added support for extension functions for the Converters class logic. Resolves #47

@gkopff Tested the jar from mvn package and the extension functions work properly. Can you please check the pom.xml file if everything is ok? I kept the configuration that IntelliJ applied and it seems to work.

Thanks @mihakrajnc
Let me know if you're interested in doing the same to the java.time serialisers :-)

I'll do a release once I've had time to adjust the README to spruik your good work.

@mihakrajnc 1.8.0 has been released.

@mihakrajnc Do you have some short examples of the Kotlin extension usage that can go into the README?


fix(versions): update Activiti/example-runtime-bundle versions

UpdateBot pushed helm dependency: common to: 1.1.29

UpdateBot commands:
updatebot push-version --kind helm common 1.1.29 ACTIVITI_CLOUD_COMMON_HELM_CHART 1.1.29


Tridib scrapper

Fixes
# Issue No.

Description

Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New project (non-breaking change which adds functionality)

How Has This Been Tested?

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have included a README.md file
[ ] My project follows this structure: Domain Folder/ Project Name Folder/ Project files and Readme.md files
[ ] I have added demonstration in the form of GIF/video file
[ ] I am a GSSoC'22 Participant

@Tridib11 atleast mention issue no. in the comment box . So that we can understand that for that which issue you have resolved.


Xamarin.iOS with db as bundled resource: "unable to open database file"

I'm trying to bundle a prepopulated db with my app (generated on the Simulator):
<ItemGroup>
  <BundleResource Include="Resources\data.db" />
</ItemGroup>

My dependencies in my Xamarin.iOS project:
<package id="sqlite-net-pcl" version="1.5.231" targetFramework="xamarinios10" />
<package id="SQLitePCLRaw.bundle_green" version="1.1.11" targetFramework="xamarinios10" />
<package id="SQLitePCLRaw.core" version="1.1.11" targetFramework="xamarinios10" />
<package id="SQLitePCLRaw.provider.sqlite3.ios_unified" version="1.1.11" targetFramework="xamarinios10" />

In my .NETStandard project:
<PackageReference Include="sqlite-net-pcl" Version="1.5.231" />

Code:
var db = new SQLiteConnection("data.db", SQLiteOpenFlags.ReadOnly);
var stops = db.Table<MyType>().Count();

On device this fails with:
SQLite.SQLiteException: unable to open database file
  at SQLite.SQLite3.Prepare2 (SQLitePCL.sqlite3 db, System.String query) [0x0001b] in <eaa146ee868043e287f5507c8701ad9e>:0
  at SQLite.SQLiteCommand.Prepare () [0x00011] in <eaa146ee868043e287f5507c8701ad9e>:0
  at SQLite.SQLiteCommand.ExecuteScalar[T] () [0x00036] in <eaa146ee868043e287f5507c8701ad9e>:0
  at SQLite.TableQuery`1[T].Count () [0x0000b] in <eaa146ee868043e287f5507c8701ad9e>:0

Same issue when populating on device and then trying to open on Simulator.
Same issue when copying to the Documents folder first.
Populating the db on device and the reading works without a problem. Then bundling that database still fails (the file is identical when downloading it from the device).
Tried with a compact copy.

I worked with SQLite before on native and with Realm: I though you could just copy them over?
Am I missing a crucial step or something obvious?

Ok so great, apparently it is also expecting the -wal (and maybe -shm) files. 😊
That shouldn't be necessary, should it?

So setting Journal Mode to Delete also works.
Is this something that can be handled in the library? Maybe just a better exception?
Maybe this use case with caveat can be added to the docs?

There are caveats in play when trying to open a WAL mode database in read-only mode:
https://www.sqlite.org/wal.html


chore: lift button component to ts

Could you do another x-review on my additional changes @LKuechler?

@marionebl your changes look good to me. I will fix the bugs that appeared in the build :)


No city labels (townspot, name) on ES

Below is a screenshot of the capital region of NH, which should have labels for Concord, Manchester, and Salem. Zooming in & out I couldn't find them:

config
Manufacturer: samsung
Model: SAMSUNG-SM-G925A
Release: 5.1.1
Code name: REL
SDK: 22
Build number: master-598

Related: https://github.com/tangrams/eraser-map/issues/118

I had restored these at some point by adjusting the label offsets, but it looks like these commits https://github.com/tangrams/eraser-map/commit/6ac67aac6bdf68cee2b788dd89d7c50840de89b0 and https://github.com/tangrams/eraser-map/commit/c89238172c4c027749d9d12bf6fec997606605fe again caused the text and icons to overlap (thus to collide, and the icons have higher priority so the text is hidden). (Note comment about spacing being set to "half icon size" in previous commit, which is no longer true... that's what kept them from overlapping.) This can be verified by setting collide: false on the text at the root of the places layer.
Looks like we can address by tightening the sprites re: #118, then adjusting these offsets back to ensure the text clears below the icon.

Note: I upgraded this repo to use Tangram 0.5, which means that these place labels are also now missing from the web map (due to addition of sprite collision in tangram 0.5.0). However this matches the ES behavior so I believe it's best to keep things current and reflecting cross-platform behavior.

Sounds good, thanks. Consistency is (almost) always better!

Should be fixed in https://github.com/tangrams/eraser-map/commit/48acded90ccd1761f5a00c892434117b09d6af2e and https://github.com/tangrams/eraser-map/commit/8c5b1eaf0049d4cad05a60f47de9784e617511e5. Waiting to verify with a new Eraser Map build (soft verified in Tangram JS, though).

:city_sunrise:

Verified on device.

:iphone: :mag_right: :city_sunset:


Right Click and Quit/Show Gone From Tray Icon in v2

The right click and quit is gone from the tray icon along with the show.

@graywolf336 can you test again?

It is working on the Mac.
@sampaiodiego can you test this on linux?

they're gone!

Closed by #288


Modal layout is incorrect after Orientation change

🐛 Bug Report
the Modal content position is not correct after screen orientation is changed to landscape and back to portrait.
To Reproduce
Steps to reproduce the behavior:
Rotate the screen to landscape and then rotate back to portrait view. Open a modal, the modal is not centered.
Expected behavior
The modal should be centered in window with the correct left and top.
Link to runnable example or repository (highly encouraged)
UI Kitten and Eva version

Package
Version

@eva-design/eva
5.0.0

@ui-kitten/components
5.0.0

Environment information

Thanks for reporting!


Implement GitHub Actions Workflow for Automated Image Release on Every Project Release

Issue Description:
As the mentor of the Nest ONDC Project, I would like to implement a GitHub Actions workflow to automate the process of releasing images associated with each project release. This workflow will ensure that every time a new release is created, the corresponding image assets are also released and made available to users.
Tasks:

Set up a GitHub Actions workflow file to trigger on every release event.
Define necessary checks and conditions to ensure the quality and readiness of the images before release.
Implement steps to package and deploy the images to the appropriate platform or repository.
Test the workflow to ensure its reliability and effectiveness in releasing images seamlessly with each project release.

Additional Information:

The workflow should include checks to verify that the images meet specified quality standards and adhere to project branding guidelines.
Images should be properly versioned and tagged to correspond with each project release.
Any required dependencies or tools for image processing should be clearly documented in the workflow file.
The goal is to streamline the release process and provide users with consistent, high-quality images with each project update.

Note to Contributors:
Contributors are invited to collaborate on this task by proposing solutions, suggesting improvements to the workflow, or offering assistance in testing and refining the implementation. Your contributions are valuable in ensuring the success of this automation initiative and enhancing the overall user experience of the Nest ONDC Project.

@ratnesh-maurya
please assign me this issue

@Tarungupta18 go ahead

okay


bug: Weavite cannot retrieve _split_overlap field generated by the DocumentSplitter

Describe the bug
Weavite cannot retrieve the _split_overlap field generated by the DocumentSplitter even if the field is specified in the schema.
To Reproduce
see more details at: https://github.com/deepset-ai/haystack/discussions/8511
Describe your environment (please complete the following information):

OS: macOS
Haystack version: 2.6.1
Integration version: 4.0.0

Minimal reproducible code example:

from haystack import Document
from haystack.components.preprocessors import DocumentSplitter
from haystack_integrations.document_stores.weaviate.document_store import WeaviateDocumentStore

document_store = WeaviateDocumentStore(url="http://localhost:8080")

doc = Document(content = """This is a test. This is another test. This is a third test.
This is a fourth test. This is a fifth test. This is a sixth test.
This is a seventh test. This is an eighth test. This is a ninth test.
This is a tenth test. This is an eleventh test. This is a twelfth test.
This is a thirteenth test. This is a fourteenth test. This is a fifteenth test.""")

splitter = DocumentSplitter(split_length=3, split_overlap=2, split_by="word")

splitted_docs = splitter.run([doc])["documents"]

document_store.write_documents(splitted_docs)

print(document_store.filter_documents()[0])

Weaviate code to reproduce the bug
import weaviate

client = weaviate.WeaviateClient(
   connection_params=(weaviate.connect.base.ConnectionParams.from_url(url="http://localhost:8080", grpc_port=50051))
)

client.connect()

DOCUMENT_COLLECTION_PROPERTIES = [
   {"name": "_original_id", "dataType": ["text"]},
   {"name": "content", "dataType": ["text"]},
   {"name": "dataframe", "dataType": ["text"]},
   {"name": "blob_data", "dataType": ["blob"]},
   {"name": "blob_mime_type", "dataType": ["text"]},
   {"name": "score", "dataType": ["number"]},
   # the following properties can be present or not. Weaviate shows the same behavior:
   # documents are correctly written but not correctly returned
   # {
   #         'name': 'mylistofobjects', 'dataType': ['object[]'],
   #         'nestedProperties': [
   #             {'dataType': ['text'], 'name': 'doc_id'},
   #             {'dataType': ['number[]'], 'name': 'range'}],
   # }
]

collection_settings = {
   "class": "Default",
   "invertedIndexConfig": {"indexNullState": True},
   "properties": DOCUMENT_COLLECTION_PROPERTIES,
}

collection = client.collections.create_from_dict(collection_settings)

properties = {
   'content': 'This is a test document',
   'dataframe': None,
   'score': None,
   'mylistofobjects': [{'doc_id': '1', 'range': [1, 2]}],
   '_original_id': '3972bbfa2c09af05a7118ed4233124582a138dd83e3de1db3ff742f810df4c41',
}

collection.data.insert(
   properties=properties,
   vector=[0.1] * 300,
)

# this works and returns all properties except byte
# (in this case byte properties are not present, but they are not returned even if present)
it = collection.iterator(include_vector=True)
for i in it:
   print(i)

# this fails
it = collection.iterator(include_vector=True, return_properties=["content", "mylistofobjects"])
for i in it:
   print(i)


Fix incorrect suite teardown display position in log.html

Suite teardown should be dislpayed in the end of current suite block.

Codecov Report

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

@@           Coverage Diff           @@
##           master    #3602   +/-   ##
=======================================
  Coverage   74.21%   74.21%
=======================================
  Files         199      199
  Lines       16467    16467
  Branches     2653     2653
=======================================
  Hits        12219    12219
  Misses       3817     3817
  Partials      431      431

Continue to review full report at Codecov.

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

Before fix:

After fix:

I like this.
Would be nice to get thin into 3.2.2

The current behavior is by design. If suite teardown is in its correct chronological position, it is nit seen when you look at the general suite info on top. I don't want to change that.
This has been discussed earlier few times and someone once proposed making this configurable with a cli option. I personally don't think that's worth the effort and I'm also little concerned that lot if configuration options increase complexity. That said, if someone provides a PR making this configurable I'd be happy to merge it. The first step would be submitting an issue about it.

I would also expect implementation ro be a lot simpler. I didn't look the code now, but simply modifying suite template in log.html ought to be enough.

@pekkaklarck you're right, we have some similar issue for TRACE log: https://github.com/robotframework/robotframework/issues/2086
We should use a unified solution to fix them, my PR can only fix suite teardown which is not good enough.
I'll close my PR.

Relative order of keywords and messages being wrong (#2086) is simply a bug and needs to be fixed (but is hard to). Suite teardown being shown at the top along with other suite information is by design.


Add full deprecation warning to util.py

Summary
This causes imports of qiskit.util to raise a DeprecationWarning (it should be qiskit.utils).  The module itself has been deprecated since #5420 (released in Terra 0.17), but due to the overrides of the deprecation warning handling (see #7204), we couldn't raise a deprecation warning here without Aer and friends' uses leaking out immediately to users.
I added a reno for this to highlight it; there already was a reno in 0.17, but this might be the first time that downstream packages actually notice the deprecation.
Details and comments
This will cause a few more deprecation warnings to be seen at the top of the test suite (at least until Qiskit/qiskit-aer#1382 is released in a new version), but they won't fail the run because they're triggered during collection, before our test-runner code turns warnings into errors (edit: forgot about Sphinx!).
We shouldn't merge this unless #7204 (at least the _filter_deprecation_warnings bit of it) is in Terra to avoid leaking the extra warnings out to users.  Also on hold til Qiskit/qiskit-aer#1382 merges.

No longer on hold, because the blockers are merged now.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

4 of 4 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.008%) to 82.49%

Totals

Change from base Build<PHONE_NUMBER>:
0.008%

Covered Lines:
49641

Relevant Lines:
60178

💛  - Coveralls


Error when modifying planting date

I'm trying to apply changes in planting and harvesting dates with the following configuration in the model:
"Climate input
lars_fp=get_filepath('SG02_software.dat')
base=pd.read_csv(lars_fp, sep='\t', engine='python')
base['Date']=pd.to_datetime(base['Date'])
Crop input
crop=Crop('BarleyGDD',planting_date='02/01', CalendarType=2)
Soil input
soil=Soil('SandyLoam')
Initial water condition input
init_wc = InitialWaterContent('FC') # default is field capacity. Maybe we can play with this values to adapt it to the actual yield
model=AquaCropModel('2001/01/01','2023/04/30',base,soil,crop,init_wc)
model.run_model(till_termination=True)"
It works if the planting date is 05/x but it returns the following error when changing it:
"File ~\anaconda3\Lib\site-packages\aquacrop\solution\biomass_accumulation.py:104 in biomass_accumulation
dB = WPadj * (Tr / et0)"
I printed et0 and Tr values in this line and most Tr are 0 and some et0 are 0 too. I imagine that it has something to do with the calculation of Tr maaybe because of the climate data but I wanted to share it in case someone could help me.
Thanks

I forgot to include the actual error that python returns
ZeroDivisionError: float division by zero


add pkg/status/health package and health command

What does this PR do?
WIP implementation of the healthcheck described in https://github.com/DataDog/datadog-agent/pull/1055
Meat of the business logic is in:

https://github.com/DataDog/datadog-agent/blob/xvello/healthz/pkg/status/health/health.go
https://github.com/DataDog/datadog-agent/blob/xvello/healthz/cmd/agent/app/health.go

Monitored subsystems:

tagger: main tag ingestion goroutine
tagger-docker: the only stream mode tagger collector
dogstatsd-main: parsing and intake goroutine, listeners are not monitored yet
ad-configresolver and ad-autoconfig for AD "core"
ad-dockerlistener, ad-kubeletlistener, ad-ecslistener,  for AD listeners
ad-dockerprovider, other AD configproviders rely on ad-configresolver for scheduling
dockerutil-event-dispatch for docker event dispatching to tagger + AD
metadata-* for metadata collectors (only metadata-host for now)

Forwarder is missing and will be added in a follow-up PR after some changes in the forwarder logic (drop new transactions if queue is full, and trigger unhealthy state).
Process and trace agents are not supervised, logs either, could be added in follow-up PRs.
Default timeout is 30 seconds, components ping every 15 seconds
agent health output
Default output is empty if healthy (exit code 0), list of unhealthy components if any (exit code <>
0):
$ ./bin/agent/agent -c ./bin/agent/dist/ health
Error: found 2 unhealthy components: metadata-agent_checks, metadata-host

A verbose switch allows to list all components:
$ ./bin/agent/agent -c ./bin/agent/dist/ health --verbose
Agent health: OK
	Healthy: ad-autoconfig, ad-configresolver, ad-dockerlistener, ad-dockerprovider, aggregator, collector-queue, dockerutil-event-dispatch, dogstatsd-main, metadata-agent_checks, metadata-host, tagger

Other outputs
A systemd liveliness probe and an internal watchdog can be added later in individual PRs.

The buffered channel could indeed work, were you thinking about something like:
health.Run() {    // to be called on a ticker
  for _, chan := range supervisedComponents {
    select {
      case chan <- struct{}{}:
           // component healthy
      default:
          // component unhealthy
    }
  }
}

That would indeed remove the tickers from the components, they'd just need to read from the healthChan and drop the value, during their main select. The forwarder can stop reading the channel as soon as the health test is bad

Reworking done, will include the forwarder in a separate PR


AQCU-1052 first pass fix for extremes report

error seen, when primary and related upchain number of values mismatch an internal error occurred
now, it merges the two datasets into one dataframe and assigns NAs to values missing in one or the other.

Coverage decreased (-0.1%) to 98.926% when pulling 062f4bbcb853914e9eed97c9480b6d3fa537ca5a on mhines-usgs:master into 15b565745d09322db96ea508f93097ddc9706f43 on USGS-R:master.

Coverage decreased (-0.02%) to 99.006% when pulling a24a4f5d9b30fe64e384f0c0b799a9d4f5725adf on mhines-usgs:master into 15b565745d09322db96ea508f93097ddc9706f43 on USGS-R:master.

Coverage decreased (-0.02%) to 99.006% when pulling c21f3363b77addaa8803e64d0d11d596c297c50b on mhines-usgs:master into 15b565745d09322db96ea508f93097ddc9706f43 on USGS-R:master.

Coverage decreased (-0.02%) to 99.006% when pulling c21f3363b77addaa8803e64d0d11d596c297c50b on mhines-usgs:master into 15b565745d09322db96ea508f93097ddc9706f43 on USGS-R:master.

thanks @zmoore-usgs now that I got all the tests working again, I'll give that a try.

Coverage decreased (-0.2%) to 98.837% when pulling 46a1e2c15fd88051cca3567e3409b5a429e00806 on mhines-usgs:master into 15b565745d09322db96ea508f93097ddc9706f43 on USGS-R:master.

Coverage decreased (-0.04%) to 98.837% when pulling 87096b5f4fdc2ae4ee54bcf9b50e7cdb626eb297 on mhines-usgs:master into 1e6583d8268b717942644543406811a7814513e0 on USGS-R:master.

I took this ticket from @mhines-usgs after she left and made a few tweaks. New PR: https://github.com/USGS-R/repgen/pull/637


I have made whole UI, but when I am adding a SrollView on the parent View , the view is shrinking , what should I do ?

Hey there and thank you for using React Native!
React Native, as you've probably heard, is getting really popular and truth is we're getting a bit overwhelmed by the activity surrounding it. There are just too many issues for us to manage properly.
Do the checklist before filing an issue:

[ ] Is this something you can debug and fix? Send a pull request! Bug fixes and documentation fixes are welcome.
[ ] Have a usage question? Ask your question on StackOverflow. We use StackOverflow for usage question and GitHub for bugs.
[ ] Have an idea for a feature? Post the feature request on Product Pains. It has a voting system to surface the important issues. GitHub issues should only be used for bugs.

None of the above, create a bug report
Make sure to add all the information needed to understand the bug so that someone can help. If the info is missing we'll add the 'Needs more information' label and close the issue until there is enough information.

[ ] Provide a minimal code snippet / rnplay example that reproduces the bug.
[ ] Provide screenshots where appropriate
[ ] What's the version of React Native you're using?
[ ] Does this occur on iOS, Android or both?
[x] Are you using Mac, Linux or Windows?

This isn't really an issue with react native, the issue template you declined to fill out mentions that usage questions should go on StackOverflow:
Regardless:
If you want it to look exactly the same as it did before except scrollable, wrap the contents of the scroll view in a view and set the height:
<ScrollView>
  <View style={{ height: ??? }}}>
    ...
  </View>
</ScrollView>

I have the same issue. My code looks like this:
var MyComponent = React.createClass({
    getInitialState() {
        return {
            keyboardHeight: 0
        }
    },
    componentDidMount: function () {
        this.db = new Store('wiosoft');
        this.orderCollection = this.db.collection('order', {unique: 'id'});
        this.keyboardDidShowListener = Keyboard.addListener('keyboardWillShow',this.keyboardDidShow);
        this.keyboardDidHideListener = Keyboard.addListener('keyboardWillHide',this.keyboardDidHide);

    },

    componentWillUnmount: function () {
        Keyboard.removeAllListeners('keyboardDidShow');
        Keyboard.removeAllListeners('keyboardDidHide');
    },

    keyboardDidShow: function (e) {
        LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
        let newSize = Dimensions.get('window').height - e.endCoordinates.height;
        console.log('newSize is: '+newSize);
        this.setState({
            //visibleHeight: (newSize-100)
            visibleHeight: newSize,
            keyboardHeight: e.endCoordinates.height
        });
    },

    keyboardDidHide: function (e) {
        LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
        this.setState({
            visibleHeight: Dimensions.get('window').height,
            keyboardHeight: 0
        });
    },
    render: function (){
            return (
                <View style={[{flex: 1}]}>
                    <ScrollView style={{flex: 1}}>
                        ......
                    </ScrollView>
                    <View style={[{height: this.state.keyboardHeight}]}/>
                </View>
            );
        }
});

If you look at the pictures you see that the component does not go all the way down to the beginning of the keyboard, nor goes all the way up to component on top (the selector). It is especially problematic in the bottom.
When the keyboard is not toggled, the bottom of the component goes all the way down where it is supposed to, but the top of the component still does not go all the way to the top.

Hey @petergarnaes ,
you can try
<ScrollView style={{flex: 1}}>

....
{this.dummyView()}

...
...
dummyView: function(){
return (

)
},
dummyViewHeight: function(){
return {
height:this.state.keyboardHeight,
}
}
You always needs a view inside scrollview which have fix height, so try to add dummyHeight and whenever keyboard appears , set its keyboard height to dummyView height :)

Thanks @RD1991! Turns out the bottom issue is me not accounting for the tab bar underneath the keyboard, so that is completely my fault.
However the top is still not correct no matter if keyboard is on or off, even using your suggestion. With the following code I still get some padding in the top. I have set the background colour of the scrollview, which shows that it has the correct layout, but the scrolling and its nested components still start at an offset.
var MyComponent = React.createClass({
    getInitialState() {
        return {
            keyboardHeight: 0
        }
    },
    componentDidMount: function () {
        this.keyboardDidShowListener = Keyboard.addListener('keyboardWillShow',this.keyboardDidShow);
        this.keyboardDidHideListener = Keyboard.addListener('keyboardWillHide',this.keyboardDidHide);

    },

    componentWillUnmount: function () {
        Keyboard.removeAllListeners('keyboardDidShow');
        Keyboard.removeAllListeners('keyboardDidHide');
    },

    keyboardDidShow: function (e) {
        LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
        let newSize = Dimensions.get('window').height - e.endCoordinates.height;
        this.setState({
            keyboardHeight: e.endCoordinates.height
        });
    },

    keyboardDidHide: function (e) {
        LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
        this.setState({
            keyboardHeight: 0
        });
    },
    render: function (){
            return (
                <View style={[{flex: 1}]}>
                    <ScrollView style={{flex: 1}}>
                        ......
                    </ScrollView>
                    <View style={[{height: this.state.keyboardHeight}]}/>
                </View>
            );
        }
});

@petergarnaes try putting your code into rnplay , i'll update it as per solution.

@facebook-github-bot stack-overflow

Hey @rajatgupta1993 and thanks for posting this! @damusnet tells me this issue looks like a question that would be best asked on StackOverflow. StackOverflow is amazing for Q&A: it has a reputation system, voting, the ability to mark a question as answered. Because of the reputation system it is likely the community will see and answer your question there. This also helps us use the GitHub bug tracker for bugs only. Will close this as this is really a question that should be asked on SO.


Smart select on |"non-empty-string" selects entire file

[...]
Also, running smart select on |"non-empty-string" results in the entire file being selected and the following error:
ERR INVALID selection range, must contain the previous range: Error: INVALID selection range, must contain the previous range
	at define.provideSelectionRanges.a.asPromise.then.e (/opt/visual-studio-code-insiders/resources/app/out/vs/workbench/services/extensions/node/extensionHostProcess.js:585:31)

Originally posted by @diabolicle in https://github.com/microsoft/vscode/issues/74309#issuecomment-495870586

Tracked upstream by https://github.com/microsoft/TypeScript/issues/31657


Can't login on Kibana with Searchguard

Hi,
When I try to enter kibana I always get:
An error occurred while checking your credentials, make sure your have a running Elasticsearch cluster secured by Search Guard running.
I attached my configfiles. Maybe I forgot something in the config.
kibana.txt
elastic.txt

The error message you are seeing is displayed when the "authinfo" endpoint, which is provided by SG and used to validate the users credentials, is not accessible.
Are ES and KI running on the same machine? I guess so since your elasticsearch.url is set to
elasticsearch.url: "https://localhost:9200"
What happens when you try to access this endpoint directly?
https://localhost:9200/_searchguard/authinfo

I get a json.
But I entered it from my webbrowser. ES and KI are running on an virtual machine without GUI
{"user":"User [name=admin, roles=[]]","user_name":"admin","user_requested_tenant":null,"remote_address":"-------------","sg_roles":["sg_all_access","sg_own_index","sg_public"],"sg_tenants":{"test_tenant_ro":true,"admin":true,"adm_tenant":true},"principal":null,"peer_certificates":"0"}

Strange. Do you see anything in the ES or KI log file?

[2017-06-19T14:09:06,256][WARN ][c.f.s.h.SearchGuardHttpServerTransport] [---------] Someone (/<IP_ADDRESS>:60655) speaks http plaintext instead of ssl, will close the channel
I see that in the elasticsearch log.

and that
[2017-06-19T13:58:02,447][INFO ][c.f.s.a.BackendRegistry  ] Cannot authenticate user (or add roles) with ad 4 due to ElasticsearchSecurityException[com.google.common.util.concurrent.UncheckedExecutionException: ElasticsearchSecurityException[kibanaadmin not found]]; nested: UncheckedExecutionException[ElasticsearchSecurityException[kibanaadmin not found]]; nested: ElasticsearchSecurityException[kibanaadmin not found];, try next

Something is strange here. This one:
[2017-06-19T14:09:06,256][WARN ][c.f.s.h.SearchGuardHttpServerTransport] [---------] Someone (/<IP_ADDRESS>:60655) speaks http plaintext instead of ssl, will close the channel
means that someone, e.g. Kibana or browser, tried to access ES with HTTP instead of HTTPS.
But on your kibana.yml you have
elasticsearch.url: "https://localhost:9200"
So, can you please do the following:

Stop ES and KI and delete all log files from ES and KI
Set the Search Guard log level to debug. In config/log4j2.properties, set:

logger.fg.name = com.floragunn
logger.fg.level = debug

Start ES and KI
Access KI and try to log in (I guess you use "kibanaadmin" as login?

Actually I tried it with kibanaserver. I have no idea where the kibanaadmin came from.

Is it ok to send it by email?

sure, you can use<EMAIL_ADDRESS>

Thanks a lot.

@cooperspencer does the issue still persist?

no feedback, assume solved

So... what was the solution? i have the same problem and the documentation is so complex

Sorry, didn't found one and gave up.

I have the same problem

anny issue ?


Scheduler for validation blocks

Validation blocks need special treatment in the scheduler. Each validator seat should be entitled to a fixed throughput per slot, completely isolated from the main scheduler and from the throughput of other validation blocks.

ValidationBlocks of committee members should not cost mana.

Conversely, non-committee members should be charged or their ValidationBlocks dropped.


fix(cli): properly resolve template plugins on all platforms

This PR uses pathToFileURL to use the file:// url scheme to resolve plugins. Current behavior in @graphql-codegen/cli causes a crash when ran on windows.
Related #7664 Diizzayy/nuxt-graphql-client#15
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Checklist:

[x] I have followed the CONTRIBUTING doc and the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

Doesn't pass some unit tests

@Diizzayy, could you rebase your PR and test it again on Windows? 🙏🏼 🙏🏼 Thanks!

@charlypoly Sure thing, I'll hop on it right away.

@charlypoly Sure thing, I'll hop on it right away.

@Diizzayy thank you!

@charlypoly Sure thing, I'll hop on it right away.

Hi @Diizzayy,
could you rebase your PR and test it on Windows?
Then, we'll be good to merge.

@charlypoly Thank you, I'll rebase and have a look at it.
Also, Do you happen to have discord? We're having some issues over at Nuxt with recent changes to the graphql-codegen cli. I would love to be able to discuss with you a bit on the topic so we can come to a suitable solution for the nuxt modules which integrate GraphQL client support leveraging the tools you guys provide.

@charlypoly I've had the chance to look at this again, and it seems that the esm issues on windows were previously addressed in #7978


Spanish

@miguel567 can you tl check this if your free?

Translated a few more things.

Just finished translating the latest newsletter! Let me know if I should change anything. Tried to match the word usage for the terms you translated in previous weeks!

@japzar please make each of these a separate PR and then we will merge them, thanks

Also @japzar please reach out to us via our discord #translation channel at discord


Fixed Broken benchmarks Link

Fixes #852
Updated the Documentation with correct link to Benchmarks

Also, this will need a git rebase on top of current master. @iamabhishek0 please let us know in #poliastro-newbies if you need help with this.

Merged, thanks @iamabhishek0!


⚠ MorethanTV has degraded performance

In d3a5a83, MorethanTV ($MTV) experienced degraded performance:

HTTP code: 502
Response time: 10998 ms

Resolved: MorethanTV performance has improved in 077e297 after 8 minutes.


Sprint 49

Continuous Integration base branch for Sprint 49
Rules of the branch

The idea is to integrate changes as frequently as possible. Open Pull Requests against this branch only if you really need your changes to be reviewed thoroughly.
Otherwise push your changes directly to this branch
Pull frequently
Push frequently
When pulling, use git pull --ff-only to avoid merge commits. If that doesn't work, please use git rebase origin/sprint-49 to rebase your unpushed commits on the latest upstream commits rather than git pull
If you break the build, please fix it!

Changelog

Fixed runtime issue with Halogen Hooks in forms #84b455809

Closing and reopening to get Slack notifications


How to merge exports and global typings into the same entry point

I have a library which provides

util functions within exported classes
globally accessible typings within a certain namespace spread over multiple decleration files

Documenting these two parts works fine when using two individual entry points:
Entry point for export classes:
export { DemoClass } from '../../issue/lib';

Entry point for global typings in namespace:
declare namespace DemoNamespace {}

...this is a trick I found in https://github.com/TypeStrong/TypeDoc/issues/1424#issuecomment-752322225
This results in two modules, one for each entry point.

Now I want to get rid of the extra Modules layer so that the reader of the documentation can see the content (DemoClass & DemoNamespace) immediatly.
So I tried to just merge the code of the entry points into one:
export { DemoClass } from '../../issue/lib';

declare namespace DemoNamespace {}

However in this case the typings are not documented anymore.

I already tried to put the namespace decleration into a declare global block and played around with triple slash reference but I couldn't make it work.
/// <reference types="../../issue/typings" />

export { DemoClass } from '../../issue/lib';

declare global {
  namespace DemoNamespace {}
}

Is there a way to merge the exports and global typings into one entry points?
I just updated to TypeDoc version 0.20.20.
It wasn't an issue pre 0.20 since the mode: file and includeDeclerations options were available.

There is - but you'll need a plugin. TypeDoc proper doesn't have a way to do this.
You can do this by using typedoc-plugin-not-exported and annotating your globals with @notExported (or pass the --includeTag xyz and use @xyz)

Thanks for the hint @Gerrit0!
The plugin looks very promising but unfortunately there seem to be problems with namespace declarations.
I tried to add a very basic namespace but I received the following error message when trying to build the docs:
RangeError: Maximum call stack size exceeded
    at new ContainerReflection (C:\Users\mahof\Documents\Repos\GlobalTypesExportIssue\node_modules\typedoc\dist\lib\models\reflections\container.js:6:1)
    at new DeclarationReflection (C:\Users\mahof\Documents\Repos\GlobalTypesExportIssue\node_modules\typedoc\dist\lib\models\reflections\declaration.js:16:9)
    at Context.createDeclarationReflection (C:\Users\mahof\Documents\Repos\GlobalTypesExportIssue\node_modules\typedoc\dist\lib\converter\context.js:112:28)
    at Object.convertNamespace (C:\Users\mahof\Documents\Repos\GlobalTypesExportIssue\node_modules\typedoc\dist\lib\converter\symbols.js:105:32)
    at Object.convertSymbol (C:\Users\mahof\Documents\Repos\GlobalTypesExportIssue\node_modules\typedoc\dist\lib\converter\symbols.js:71:79)
    at Converter.convertSymbol (C:\Users\mahof\Documents\Repos\GlobalTypesExportIssue\node_modules\typedoc\dist\lib\converter\converter.js:52:19)
    at Converter.lookForFakeExports (C:\Users\mahof\Documents\Repos\GlobalTypesExportIssue\node_modules\typedoc-plugin-not-exported\dist\main.js:49:35)
    at triggerEvents (C:\Users\mahof\Documents\Repos\GlobalTypesExportIssue\node_modules\typedoc\dist\lib\utils\events.js:183:43)
    at triggerApi (C:\Users\mahof\Documents\Repos\GlobalTypesExportIssue\node_modules\typedoc\dist\lib\utils\events.js:149:13)
    at eventsApi (C:\Users\mahof\Documents\Repos\GlobalTypesExportIssue\node_modules\typedoc\dist\lib\utils\events.js:42:18)

The entry point file in my minimized test repository looks like this:
export { DemoClass } from './module'

/** @notExported */
declare namespace DemoNamespace {
    interface DemoITF {
        param: number;
    }
}

The DemoClass is exported from this file:
export class DemoClass {
    static DemoFunction(param: number) {}
}

I use the following package versions:
"typedoc": "0.20.23",
"typedoc-plugin-not-exported": "0.1.3",
"typescript": "3.9.0"

Is it fine to address this issue here or should I move it into the Issue section of the typedoc-plugin-not-exported GitHub repository?

Normally I'd point you to that plugin - but this works since the bug is in code I provided.
@tomchen the fix for this crash is pretty easy, just need to ensure that the symbol is declared in this scope, not just visible in this scope:
    const symbols = context.checker
      .getSymbolsInScope(node, TypeScript.SymbolFlags.ModuleMember)
      .filter(
        (symbol) =>
          symbol.getDeclarations()?.some((d) => d.parent === node) &&
          !exportedSymbols.includes(symbol)
      )

Yeah. typedoc-plugin-not-exported v0.1.4

Thanks for that fast fix, but I fear I have to bother you one more time.
Eventhough the documentation can be created for the demo example described above, it won't cover the declarations from different files under the same namespace.
I added the following code in a new file:
declare namespace DemoNamespace {
    interface DemoITF2 {
        param: number;
    }
}

So I would expect, that DemoITF and DemoITF2 get exposed in the documentation of namespace DemoNamespace as described in https://github.com/TypeStrong/typedoc/issues/1424#issuecomment-752322225
Unfortunately only DemoITF is available, whereas it used to work when I used 2 different entry points as described in the original question.
We have multiple declaration files within the same parent namespace for better repository structure so we can avoid having to declare all exposed typings in just one file.

I suspect this might be another similar issue as the one here https://github.com/TypeStrong/typedoc/issues/1474#issuecomment-775159176... though likely easier to solve. I'll need to take a closer look later this week (most likely Saturday...) but I think this can be resolved by getting the parent's symbol and checking for any of its declarations instead of just the first declaration.

Thanks, that would be awesome!

Well, it's kind of ugly... but so long as the namespace is wrapped with declare global somewhere so that TypeDoc can detect the symbol is global the next version of typedoc-plugin-not-exported should handle it.

OK. typedoc-plugin-not-exported v0.1.6

If you want to get rid of the extra modules layer, you might also want to try this plugin: https://github.com/krisztianb/typedoc-plugin-merge-modules
It's only goal is exactly that: to get rid of the extra modules layer.

Oh neat! I didn't realize you'd gotten around to publishing that, that's probably the better answer here.

I tried the new typedoc-plugin-not-exported version as well as typedoc-plugin-merge-modules => both solutions work for me 👍
So thanks for the great support here, for me the issue can be closed.


sublime text

Environment (please complete the following information):

OS (e.g., Windows 10):
Extension version (e.g., 1.2.3):

Describe the bug:

Repro steps:

Expected behavior:

Additional context:

This extension only works with VS Code and there are no plans to support Sublime Text.


Binding with Parent-Child not working per this doc

Getting an error on this code above. Did something change in the last preview release?:
The attribute names could not be inferred from bind attribute 'bind-Year'. Bind attributes should be of the form 'bind' or 'bind-value' along with their corresponding optional parameters like 'bind-value:event', 'bind:format' etc.
[Parameter]
private int ParentYear { get; set; } = 1978;
private void ChangeTheYear()
{
    ParentYear = 1986;
}

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

ID: be4c4d0c-149c-bde1-c7fa-f082916390ca
Version Independent ID: 9d945996-ad02-bd4b-58ea-c465cc5cc74c
Content: Create and use ASP.NET Core Razor components
Content Source: aspnetcore/blazor/components.md
Product: aspnet-core
Technology: aspnetcore-blazor
GitHub Login: @guardrex
Microsoft Alias: riande

It should work. Check your component naming (casing in particular) :point_right: https://github.com/aspnet/AspNetCore/issues/9786

Wait ... hold on a sec. I was reminded of that error when the naming is wrong.

Yeah ... so what's often happening when the name of the child component is correct, is that the child component (as that issue calls out) just isn't found. Place your child component in the Pages folder to have it discovered .... or put non-page components in one of the Shared folders. If you need to make a component available in the app from someplace else, then you must add an explicit @using to bring it in where it will be used. We have this covered in the following section :point_right: https://docs.microsoft.com/en-us/aspnet/core/blazor/components?view=aspnetcore-3.0#component-classes

The issue was my file name was Test1 and I forgot to change the component name on the parent; however, I would have expected VS to catch this as an error during build. Code in document works fine. My bad.

^ my "child" file name was Test1

No worries. Yes, indeed ... engineering has already made some improvements that will help: Coming up for Pre8, a warning is generated if an element in the markup starts with an uppercase letter but the name doesn't match the name of a component in the app. We have that doc update on the staging branch, so the text will go live when Pre8 releases.

@guardrex
Don't want to open a new thread, but... having this event callback property in the ChildComponent.razor is somewhat not intuitive:
 [Parameter]     public EventCallback<int> YearChanged { get; set; }
Because it's not used directly anywhere, only under the hood.
IMO this should be made differently.

It's sitting in the ChildComponent like a lost dog...

It's one of those "by-convention" things, but that's really a product feedback issue ... we can't address that from the docs team. We just write about the bits.
Open product feedback on the engineering repo :point_right: https://github.com/aspnet/AspNetCore/issues

Yes, I know, sorry for bothering you here.

No worries. Not too busy ... just working up some Blazor security content.


Submodules for vendor directory?

Thanks for govend. It seems to do what the others (Godep, gopm) cannot: put the sqlite3 driver (including the .c code!) into vendor/.
However, when I try to call govend to add a new dependency, I get a username/password prompt for Github.
-> % govend github.com/moiron/sqlx
Username for 'https://github.com':

Is there a way to get it to default to doing the clone with SSH (i.e. git clone git@github.com:moiron/sqlx.git)?
EDIT: Just realized I had a typo in the URL which is the root cause of my issue... (Github assumes it is a private repository.)
Also, I noticed you commit your vendor/ directory instead of adding it to .gitignore and calling govend locally. I was curious if there is a reason to do this?

Sorry, just saw #35 and will discuss the first part of this there.
However, as for the second part of the above, I realized it would be in order for go get to use the dependencies out of it. Have you considered using git submodules for the vendor/ directory by leaving the .git directory intact?

Hi @JohnMaguire
The thought of using git submodules inside of vendor/ has crossed my mind, but there are a few issues that worried me with such an approach:

git submodules add complexity to the code
having a vendor.yml or some manifest file accomplishes the only need we have of a git submodule, which is to have a record of the current revision version
not all dependency repositories are git (some are svn, bzr) and so how should we treat those? the vendor.yml or manifest allows all repos from any VCS host to be handled in the same way
for users that want to gitignore vendor/, the only way is to record the rev versions is via some manifest  vendor.yml file outside of vendor/.  This feature again eliminates the need for git submodules
git submodules have a bad rep (not a technical reason, but still worth mentioning since others execute commands on them that might mess up govend)

I know I just listed a bunch of concerns and disadvantages, but I am very open to hearing why you think they would be beneficial and give us something thats lacking, or do something better than its done today.

Hey Jack,
I can appreciate those concerns, and agree with you that it would add complexity (not just to the code, but also for users who are unfamiliar with submodules — as you said, they aren’t technically bad, but people struggle when cutting their teeth on them.)
I don’t think that the use of sub-modules conflicts with the “vendor.yml”. The file is great for developers to specify commits in to create the “vendor/“ directory with. Specifically, it should be run by build tools. At the same time, you may want to check out a development branch of the submodule in the “vendor/“ directory to test an upstream change with. By using submodules in “vendor/“ this would be as easy as adding a remote and checking out your own branch (like you would do with a standard Golang package).
While “vendor.yml" eliminates the need for submodules in terms of locking to a specific commit, it still provides use for those wish to gitignore “vendor/“, like you said. This is great, but if I gitignore “vendor/“, using go get github.com/govend/govend http://github.com/govend/govend` will give me my $GOPATH dependencies, when I really wanted the dependencies listed in vendor.yml. Since go get doesn’t support reading the YML file, having submodules is a great alternative.
Not using submodules works too (the approach you seem to have taken here), but I consider it dirty (perhaps only ideologically):

Committing code that is unrelated to my project
Allows for possibility of accidentally editing and committing code in “vendor/“
Pollutes git log and stats, and overall size of the repository (and since all your depends likely have more churn than your actual project code if you update them, the noise ratio is very high)
There are also license violation concerns, especially in regards to the GPL (i.e. you may not ship GPL-licensed code in a non-GPL licensed project)

John

On Mar 21, 2016, at 10:53 AM, Jack Spirou<EMAIL_ADDRESS>wrote:
Hi @JohnMaguire https://github.com/JohnMaguire
The thought of using git submodules inside of vendor/ has crossed my mind, but there are a few issues that worried me with such an approach:
git submodules add complexity to the code
having a vendor.yml or some manifest file accomplishes the only need we have of a git submodule, which is to have a record of the current revision version
not all dependency repositories are git (some are svn, bzr) and so how should we treat those? the vendor.yml or manifest allows all repos from any VCS host to be handled in the same way
for users that want to gitignore vendor/, the only way is to record the rev versions is via some manifest vendor.yml file outside of vendor/. This feature again eliminates the need for git submodules
git submodules have a bad rep (not a technical reason, but still worth mentioning since others execute commands on them that might mess up govend)
I know I just listed a bunch of concerns and disadvantages, but I am very open to hearing why you think they would be beneficial and give us something thats lacking, or do something better than its done today.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub https://github.com/govend/govend/issues/41#issuecomment-199324418

Hey Jack,
I can appreciate those concerns, and agree with you that it would add complexity (not just to the code, but also for users who are unfamiliar with submodules — as you said, they aren’t technically bad, but people struggle when cutting their teeth on them.)
I don’t think that the use of sub-modules conflicts with the “vendor.yml”. The file is great for developers to specify commits in to create the “vendor/“ directory with. Specifically, it should be run by build tools. At the same time, you may want to check out a development branch of the submodule in the “vendor/“ directory to test an upstream change with. By using submodules in “vendor/“ this would be as easy as adding a remote and checking out your own branch (like you would do with a standard Golang package).
While “vendor.yml" eliminates the need for submodules in terms of locking to a specific commit, it still provides use for those wish to gitignore “vendor/“, like you said. This is great, but if I gitignore “vendor/“, using go get github.com/govend/govend will give me my $GOPATH dependencies, when I really wanted the dependencies listed in vendor.yml. Since go get doesn’t support reading the YML file, having submodules is a great alternative.
Not using submodules works too (the approach you seem to have taken here), but I consider it dirty (perhaps only ideologically):

Committing code that is unrelated to my project
Allows for possibility of accidentally editing and committing code in “vendor/“
Pollutes git log and stats, and overall size of the repository (and since all your depends likely have more churn than your actual project code if you update them, the noise ratio is very high)
There are also license violation concerns, especially in regards to the GPL (i.e. you may not ship GPL-licensed code in a non-GPL licensed project)

John

@JohnMaguire i think this is turning out to be a great discussion.  Here are some more points/responses:

I don’t think that the use of sub-modules conflicts with the “vendor.yml”. The file is great for developers to specify commits in to create the “vendor/“ directory with.

Agreed that the manifest file could still work well with git submodules, a very fair point.

if I gitignore “vendor/“, using go get github.com/govend/govend will give me my $GOPATH dependencies, when I really wanted the dependencies listed in vendor.yml. Since go get doesn’t support reading the YML file, having submodules is a great alternative.

I believe it is the repo owners responsibility to include the vendor/ directory if they want to be go get-able, that only seems reasonable (also we can't hold everyone's hand that much)

[without git submodules it is possible to ] commit code that is unrelated to my project [and] allow for possibility of accidentally editing and committing code in “vendor/“

A valid point, but one already deliberated/decided by the Go Team when they decided on the vendor/ directory, it was a lively discussion :stuck_out_tongue_winking_eye:

There are also license violation concerns, especially in regards to the GPL (i.e. you may not ship GPL-licensed code in a non-GPL licensed project)

So if you use git submodules instead of a normal directory structure this is legally no longer an issue?  I ask because I legitimately have no idea...
One point that wasn't address was the comment:

not all dependency repositories are git (some are svn, bzr) and so how should we treat those? the vendor.yml or manifest allows all repos from any VCS host to be handled in the same way

Did you have any thoughts on deps that do not come from a git repo?
Also what about the pruning process?  How does git submodules fit with that process?
Thanks for keeping this conversation going. Again I find it very helpful!

Sorry, it's been a few days, but a couple responses! :) You make some excellent points here. :+1:

I believe it is the repo owners responsibility to include the vendor/ directory if they want their project to be go get-able, that only seems reasonable (also we can't hold everyone's hand that much)

I absolutely agree! And currently, you support this by creating a "vendor/" directory with dependencies checked out. My main two qualms with it are:

I prefer smaller repositories that contain only files relevant to them, with upstream vendors providing their own source. i.e. I should not be responsible for including upstream. It is quite possible that this is simply bias.

Cluttered Git history. Again, I think this is a mostly minor complaint, but I really don't like having "5 million lines" committed, that I didn't touch. It skews the true nature of what is happening within the repository. This is probably more important to me, specifically, as I am deeply into analytics, and think that repository analytics are a hugely untapped source of information. In fact, I have some ideas on how to capitalize on this.

An additional benefit of using submodules, in my opinion, is that it makes it easy to checkout different branches of the submodule (for example, to test something in a dev branch you pushed -- or to swap out the remote [upstream] for your own [fork]).

So if you use git submodules instead of a normal directory structure, this is legally no longer an issue? I ask because I legitimately have no idea...

IANAL. I really didn't dig up information before making that claim, but I believe it to be true. This StackOverflow answer explains quite well the train of thought I was following when I made that claim: https://programmers.stackexchange.com/questions/240633/is-licensing-an-issue-for-git-submodules
.gitmodules is more like a dependencies list (think requirements.txt). It tells the user/system to go fetch some dependencies that aren't mine. Committing code under vendor/ is integrating upstream's code into my project.

not all dependency repositories are git (some are svn, bzr) and so how should we treat those? the vendor.yml or manifest allows all repos from any VCS host to be handled in the same way

I realized I forgot to address this one earlier. I do not have a great answer for this yet.

Also what about the pruning process? How does git submodules fit with that process?

It really doesn't. I also don't think submodules necessarily need to be mandatory. I imagine it as a flag that could be stored in the manifest file, or triggered at the command line. This way you have two options:

Use submodules for development process
Trigger a flag to not use submodules (and prune) for build process

It is fairly standard for a development flow to not look exactly like the build flow. Simplicity is of course key to any tool, and maybe this would be unadvantageous (too many feature toggles will kill any project.)

Interestingly, the link you posted makes a few points that I think using submodules solves (ones I brought up):

2 It discourages contribution to upstream (because it is quicker to fix
it in the vendored copy, right?)

With submodules, you can quickly add your own fork's remote URI, test it, and then merge back upstream.

3 As a consequence it creates diverging versions of the same library

See above.

4 And possibly licensing issues (as observed with ruby)

A point I addressed.

5 It puts a lot of burden unto package maintainers, as distributions
normally disallow vendoring (for security- and maintability concerns)

This is part of why I like submodules. It doesn't completely solve this issue, but updating a submodule doesn't require use of special tools, like govend. It also is still pointing to the canonical source, which is pretty useful. I know the manifest file does this too but... well, I don't really have a great argument here.

@JohnMaguire thanks for the thoughtful responses.  I just got around to reading them.
I think you have made some interesting and valid points, and I need to mull it over in my brain.  Especially the following comment:

Use submodules for development process

Trigger a flag to not use submodules (and prune) for build process

Introducing submodules would be an enormous effort that could complicate the codebase further, but i am considering some of the benefits we discussed with a flag option.  This probably not something im going to be spending time on developing at this point, but if you feel passionate I would consider a PR or starting an experimental branch.

The current implementation solves the vendoring problem for us and does it well. I hope it is not complicated by submodules which seem like a complete alternative to govend.

If git submodules are your thing, I think https://github.com/dpw/vendetta is probably a better project to use.


[Feature] All Subjects Makrs to Percentage

Description
User Enter how many subject is there.
Then Enter marks of each
In last click Submit and get Percentage of that marks.
Screenshots
No response
Checklist

[X] I have checked the existing issues.
[X] I follow Contributing Guidelines of this project.
[X] I am a GSSOC'24 contributor.
[ ] I am a IWOC'24 contributor.
[ ] I am a JWOC'24 contributor.
[ ] I am a SWOC'24 contributor.

Code of Conduct

[X] I agree to follow this project's "Code of Conduct".

What would be the name of your calculator @zalabhavy

@Rakesh9100  Marks to Percentage

Okay proceed, keep the name as Marks-Percentage-Calculator @zalabhavy


add mozilla as a general sponsor

@ravinepal Mozilla recently rebranded themselves with a new logo. Do they prefer what you've sent or the new logo? Please confirm.

Pls use the new logo. thanks.