The Proxy Protocol for Bandit?

Hey
Had a very good time today spelunking through and trying to get this done but in the end I have to concede I should maybe do it some more boring and simple way. But I think this is a valid feature request and something to have on the radar:
The Proxy Protocol
Particularly Version 2, the binary one.
Born at haproxy but used here and there. For example, Fly supports it.
Cowboy/Ranch has it (via this library)[https://github.com/heroku/ranch_proxy_protocol]
When building NervesCloud and using device certificates we need to pass TLS straight through Fly so they can't add the original IP as a header because it is all encrypted traffic. So the option they can offer is to add the information via PROXY protocol and then the terminating app needs to know how to do it.
I started poking at it via a mix of a transport_module and a handler_module. The tricky part is the sneak-peak Bandit already takes on the wire with InitialHandler is pretty much what this would also need.
Essentially:

Grab 32-48 bytes (the current 24 is too low, but not by much)
Check for the signature, if found, parse out the parts received from the Proxy. Add those to the connection, in some nice place.
Take whatever remains and re-check those for what the handler should be.

Suddenly, connection data flows once more :)
Let me know if you have questions.
I got it to parse in a transport, but handing that off to a handler was a lot of pain and all I wanted was to get back to the default Bandit handlers.

If this is welcome I think I could take a decent first run at a PR from what I hacked on earlier today. But I think it does better being in Bandit than trying to wire it up from outside. And I have no idea where the right place for the resulting information is so it becomes accessible in the app later :)

I'm conflicted here. I'm of a pretty strong conviction that the Thousand Island / Bandit stack only considers published (and ideally non-deprecated) RFCs; I've been taking this position since the beginning. So, an adhoc standard such as this isn't really something I want to consider for inclusion in the stack itself.
However, you should be able to do this with a custom transport protocol in Thousand Island (one which you could / should publish as an add-on module in the same spirit as heroku's ranch add-on above). A custom transport_module that knows how to answer the relevant peer / local functions in the context of the proxied connection should plumb through fine and 'just work'. A sketch would look like this:

Create a new Proxy transport module. I'd suggest having this module take a configuration point of which transport module it's layering on top of (defaulting to tcp or ssl as you see fit).
Implement the handshake/1 callback to read the first line as specified in the protocol. Return a struct that contains the underlying socket reference along with this information (the returned value here is an opaque term; so long as the other callbacks in this module know how to deal with it it doesn't matter what it is).
For the peer / local functions, return the values obtained from the proxy header & stored in the passed in opaque struct.
For all other callbacks, have this module call through to the configured underlying transport module's implementation after unwrapping the underlying socket as just described

You ought to be able to use this to power any thousand island app (including Bandit) just by specifying it as the underlying transport_module (and optionally any transport_options needed to configure the proxy connection's underlying transport).
To be clear, I'm happy to help with this! I think it's a thing that should exist and I'd love to see it happen. I just don't think it belongs in the core stack.

Oh, I agree if doable it works best outside of the core parts :)
I managed tor oute around the need for now so won't be doing it currently, may run into it again in a few months or so. Closing and will revisit if needed.


Allow sorting of people and albums if list is long

Should allow sorting, as well as go straight to starting letter perhaps

Hi @cbenning, what's the current album sorting method, by title (i.e.: directory name)?

@miek770 yeah right now it is just whatever order the JSON is built in and the python code iterates alphabetically so it ends up being alphabetical. I was hoping to build a front-end sorting and searching mechanism once I get a little spare time.


[request] trinket support

yello!
I did not know how to request a feature since I was unable to find another way to directly contact you except via here haha!
would it be possible for you to consider adding trinket support for this mod? so we could equip it in a back slot instead of the chest slot? (while also still showing up on the back when in a different perspective mode)
(I love the mod so far, works wonderful)

Currently there are no plans to support any Accessories API natively, i will eventually releasing an compat mod that needs to be installed alongside to support the mainly used Accessories API's for each loader or an built in solution.
But currently i need to work on other projects, to support features i want to add.


Glob pattern matching within a GCS backend

Q
A

🐛 Bug fix?
yes/no

🚀 New feature?
yes/no

⚠ Deprecations?
yes/no

❌ BC Break
yes/no

🔗 Related issues
#1330 1330

❓ Documentation
yes

Description
Adds the ability to make use of glob pattern matching within the GS Backend.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Glob pattern matching seems to work, need to figure out why setting a prefix without a * doesn't work yet.

Pending: tests

I've removed the tests and raised a new issue to improve the mocking of Google Cloud clients and APIs.

Codecov Report

Merging #1608 (b642c1c) into main (239f0bb) will decrease coverage by 7.02%.
The diff coverage is 26.76%.

Additional details and impacted files

@@            Coverage Diff             @@
##             main    #1608      +/-   ##
==========================================
- Coverage   85.11%   78.08%   -7.03%
==========================================
  Files         227      222       -5
  Lines        7120     7010     -110
==========================================
- Hits         6060     5474     -586
- Misses        900     1339     +439
- Partials      160      197      +37

Impacted Files
Coverage Δ

pkg/iac/terraform/state/enumerator/azurerm.go
0.00% <0.00%> (-67.19%)
:arrow_down:

pkg/iac/terraform/state/enumerator/glob.go
82.35% <ø> (-9.08%)
:arrow_down:

pkg/iac/terraform/state/enumerator/gs.go
0.00% <0.00%> (ø)

...iac/terraform/state/enumerator/state_enumerator.go
43.75% <0.00%> (-20.54%)
:arrow_down:

pkg/iac/terraform/state/enumerator/common.go
100.00% <100.00%> (ø)

pkg/iac/terraform/state/enumerator/s3.go
95.65% <100.00%> (ø)

pkg/resource/azurerm/azurerm_image.go
12.50% <0.00%> (-87.50%)
:arrow_down:

pkg/resource/azurerm/azurerm_resource_group.go
12.50% <0.00%> (-87.50%)
:arrow_down:

pkg/resource/azurerm/azurerm_container_registry.go
12.50% <0.00%> (-87.50%)
:arrow_down:

pkg/resource/aws/aws_route_table_association.go
13.33% <0.00%> (-86.67%)
:arrow_down:

... and 66 more

Definitely, will update the PR shortly

LGTM thanks a lot for your contribution ! Could you also please do some documentation on this on our documentation repo ?

See https://github.com/snyk/driftctl-docs/pull/263

@all-contributors please add @bschaatsbergen for code and documentation


error

Hello! We have confirmed with our engineers that the below .gclient file is needed:
solutions = [ { "managed": False, "name": "src", "url": "https://chromium.googlesource.com/chromium/src.git", "custom_deps": {}, "deps_file": ".DEPS.git", "safesync_url": "", }, ]
And after doing so, do a gclient sync
gclient sync
Kindly see the below for your references:
https://stackoverflow.com/questions/8684282/gclient-runhooks-fails
https://www.chromium.org/developers/how-tos/depottools

This is a project that did not receive any new commit for 4 years and should be considered dead.
That being said, here are some informations:

as written in the README " It is based on the peerconnection_client that is provided in the reference code." this depends on you checking out the webrtc.org code first, and then adding this code in the /talk/ directory.
Note that the /talk/ directory doe snot exist in the webrtc code since more than 4 years (https://chromium.googlesource.com/external/webrtc/stable/talk/)
Note that the project is still using GYP files for configurations, that have been replaced by GN files two years ago in the webrtc code.

oh, and .... you pointed to the CHROMIUM url, and not the webrtc url, so your proposed solution would not work either.
In a normal webrtc checkout, the "fetch" command creates your configuration file, pointing to webrtc URL. You can check in the depot_tools source code for the fetch command:
@staticmethod
def fetch_spec(props):
url = 'https://webrtc.googlesource.com/src.git'
spec = {
'solutions': [
{
'name': 'src',
'url': url,
'deps_file': 'DEPS',
'managed': False,
'custom_deps': {},
},
],
'with_branch_heads': True,
}


[Enhancement] : improve the UI

Description
I want to Improve the UI of the buttons section
can you please assign it to me ?
Screenshots
No response
Additional information
No response
👀 Have you checked if this issue has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Contributing Guidelines?

[X] I have read and understood the rules in the contribution guideline

Are you willing to work on this issue ?
Yes I am willing to submit a PR!

according to contribution guiddeline, you have to star the repo befor emaking a PR


Migrated to Kotlin DSL

Issue #, if available:
Description of changes:

Migrated Groovy DSL based build files to Kotlin DSL

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

This work is appreciated very much, but in a separate PR I'll move all build logic into a convention plugin. .kts won't be needed. I also strongly suggest to open an issue first before spending the time on a PR.


Preview/1.0.0

:white_check_mark: Build TheIdServer 1.0.2-preview1-0004-0004 completed (commit https://github.com/Aguafrommars/TheIdServer/commit/a3a84611dd by @aguacongas)


Fix leading minuses on E1

Looks like the handling of leading minuses in systems is not correct. The solution to part (a) of this one should have a leading minus in the fourth equation, but does not.

Actually, I am wondering if the issue might be within Checkit, namely this function
https://github.com/StevenClontz/checkit/blob/d9142d024196f889913fe747cc70a5f7a0106dce/scripts/generator.sage#L53

Actually, I am wondering if the issue might be within Checkit, namely this function
https://github.com/StevenClontz/checkit/blob/d9142d024196f889913fe747cc70a5f7a0106dce/scripts/generator.sage#L53

Yes, this is a CheckIt issue; I need to fix it there, and then this bank will be fixed the next time it's built.

Yes, this is a CheckIt issue; I need to fix it there, and then this bank will be fixed the next time it's built.

The public bank is now fixed: https://checkit.clontz.org/#/banks/tbil-la/E1/3
As an aside: seed 3 of E1 and E3 use the same matrix (because they're seeded by the same number, and the matrix is generated before other random elements of each outcome). I'm trying to decide if this is desirable behavior (or should randomness be based e,g, on a seed that's not just the version number, but also a hash of the bank and outcome slugs).

The public bank is now fixed: https://checkit.clontz.org/#/banks/tbil-la/E1/3
As an aside: seed 3 of E1 and E3 use the same matrix (because they're seeded by the same number, and the matrix is generated before other random elements of each outcome). I'm trying to decide if this is desirable behavior (or should randomness be based e,g, on a seed that's not just the version number, but also a hash of the bank and outcome slugs).

Also the bug that caused this to happen was completely avoidable and I'm a very silly person for not anticipating it! https://github.com/StevenClontz/checkit/commit/25d7fb6a20bf13b59a17c3694d4e79d2fdf4ffbb

Also the bug that caused this to happen was completely avoidable and I'm a very silly person for not anticipating it! https://github.com/StevenClontz/checkit/commit/25d7fb6a20bf13b59a17c3694d4e79d2fdf4ffbb


Small fix

Description
Fixes README.md images & go style for cmd
Type of change
What is it?

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[x] Documentation update
[ ] Tests update

Checklist:

[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] 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
[ ] I run go fmt ./... to check that my code is properly formatted
[ ] I run go vet ./... to check that my code is free of common Go style mistakes

/retest

Codecov Report

Merging #493 (75a2f1c) into main (af034c5) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #493   +/-   ##
=======================================
  Coverage   31.01%   31.01%
=======================================
  Files          32       32
  Lines        3224     3224
=======================================
  Hits         1000     1000
  Misses       2130     2130
  Partials       94       94

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 af034c5...75a2f1c. Read the comment docs.


Remove the static stuff from the mint page

Right now due to the nature of the useTransaction hook, the ether being passed to the transaction is statically set to 0.05 ether. This should be changed to be dynamic and adaptive to the contract.
We should wait for the useTransaction hook to be updated to support passing in params when it is called (https://github.com/Developer-DAO/web3-ui/issues/174).

When PR the useTransaction hook was removed.  Currently the mint price is updated from the useContract hook getting the data from .cost()
      const response = await nftContract.mint(1, {
        value: ethers.utils.parseEther(mintPrice),
      });

Found here
which is the same value as displayed on UI next to the mint button.
@Dhaiwat10 does this resolve this issue, or will there be a need to utilize the useTransaction hook instead when it is working properly?

I think so, closing this one. Thanks!


Apollo metrics always returning le=+inf

Describe the bug
Apollo metrics not falling into correct buckets, enve though requests are around 100ms and should fall into the defined bucket of 0.1
Metrics only shows one bucket of +inf
To Reproduce
Steps to reproduce the behavior:

Activate Graphql metrics
Do several graphql calls
check /metrics

Expected behavior
Requests will fall into respective buckets

buckets should now be filled correctly. Mind I changed the names of some metrics ending in 'seconds' to end in just 's'.


error for Subject #31

Thank you for this awesome work. I just took a quick look at COVID19-Korea-2020-03-25.xlsx and noticed that Subject 31 from Daegu has 170 contacts. This should be 1160 contacts as this was the case from a religious group?
So I think there may be a systematic shifts in the data and this can be fixed easily by double checking the data importing procedure.

Hi, thank you very much for catching this. I just fixed it. Sorry for getting back late. I'm not sure why I didn't get any notifications from Github...
The KCDC stopped providing information on the number of identified contacts since February 20 and so I stopped keeping track of them since then (that's probably why I didn't notice it until now)...


Adopting Zag for accessibility

Hello,
I was reading the source code of Turboprop and I believe we could adapt one of its concepts to bring fully-featured accessibility to the SaladUI components. The solution leverages Zag, a framework-agnostic library that implements state machines to handle accessibility concerns across UI components. Zag provides the core logic that can be connected to existing UI components to add necessary ARIA attributes.
The Turboprop creator was developing hooks for various components before the project was discontinued. These hooks bind the appropriate state machine to enable accessibility features when the component is mounted. After reviewing the code, I realized we could create a single, dynamic hook that determines the appropriate state machine for each component and binds it upon component mounting. This will enable us to bring accessibility to all components that Zag supports. The best part is that this requires minimal changes to existing component code - we only need to add a few data attributes since the hook handles the complex logic.
I've already made progress on rewriting Turboprop's implementation into this generic hook. I'd appreciate any feedback on this solution or ideas for improvement. If the approach seems viable, I'm happy to open a PR.
Here's a demo using the collapsible component.
https://github.com/user-attachments/assets/148af02d-f0d8-4925-8934-baa3359661f5

Thanks @selenil, I'm not sure about hook. When I started SaladUI, I try to avoid custom JS as much as possible. How do you think these hook will help to improve Liveview component?

The hook will invoke a client-side library (Zag) to add accessibility attributes to components, enabling features like keyboard interaction and proper focus handling. Its role would be similar to RadixUI's role in ShadCN.  While a single hook works for all components, an Elixir-based approach would be ideal. However, I haven't found any Elixir accessibility libraries other than Turboprop, and implementing accessibility manually for each component would be challenging.
What are your thoughts on this approach?

I +1 this.
Accessibility currently is my biggest concern about this library (and frankly the entire liveview component library ecosystem). Implementing accessibility correctly just is a very big effort and using a well-tested library like Zag that does the heavy lifitng is the best option here imo.

@selenil what is your proposal, single hook for all components is ideal but it seems impossible

@bluzky yes, a single hook for all components is my proposal. I'm working on it, and it’s almost done, but there are still some issues to address.

@bluzky yes, a single hook for all components is my proposal. I'm working on it, and it’s almost done, but there are still some issues to address.

Wow awesome, can't wait to see your PR

I'm curious too! I was skeptical of adding more JS but this Zag library seems very good!

This would be a great addition to the library!
@selenil, how is it going? Do you have a public wor-in-progress branch published?

We're working on this in #104 and #110.


CIF-2222: Add config for storefront context render

Description
Render storefront context data based on config
Related Issue
CIF-2222
Motivation and Context
product recs
How Has This Been Tested?
unit tests
Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] I have signed the Adobe Open Source CLA.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes and the overall coverage did not decrease.
[x] All unit tests pass on CircleCi.
[x] I ran all tests locally and they pass.

LGTM
As @Buuhuu mentioned, please add a test case to test the behavior if the setting is disabled.

LGTM
As @Buuhuu mentioned, please add a test case to test the behavior if the setting is disabled.

added now


Add LGTM badges to README

I think the LGTM integration with GitHub would also deserve a discussion (as an issue or in the dev ML), but let's try it and see if we like it.


MoneyMismatchException:contextMismatch when using different context

When using this library with a Money instance with a custom context calculating the inclusive/exclusive price will throw an exception.

The monies do not share the same context. If this is intended, use plus($money->toRational()) instead of plus($money).

In my use case the context should not round the numbers which could be achieved with a custom context. The default context auto rounds the values to the default rounding of the used currency.

Thanks for your PR. Released under version 2.0.1.


Hyprland completely froze

I wasn't even able to switch to a tty.
So that may indicate that the problem is not on hyprlands side.
Anyway here is the log:
log.txt
and my config: config.txt
I don't have a stacktrace of hyprland because it didn't crash, but i have a stack trace of xwayland if that helps: xwayland-stacktrace.txt
If you don't think it is a Hyprland bug, feel free to close the issue.

config.txt? As far as I know hyprland searches for hyprland.conf, unless you just renamed this here.
Other than that, is there any way to reproduce this? Specific applications that were open?

you can't upload a .conf file to a github comment/issue

Alright good to know, thanks.

possibly related to #1103

I wasn't even able to switch to a tty.
So that may indicate that the problem is not on hyprlands side.

TTY switching is handled by hyprland lol

why is that? doesn't that defeat half of the purpose of the tty?

cuz thats how linux works. No

Ok sorry for me being a noob, but wouldn't it be neat for debugging purposes, to have the TTY switching be handled by a separate process?
Like I am not 100% sure how it is handled on xorg, but afaik even when the xorg window manager freezes for some reason, you can still switch to a tty and killall X or something.

This is happening to me too

Seems we both use nix, it might be a nix issue

any specific program I can use to try and reproduce this, or is it crashing randomly?

Like I am not 100% sure how it is handled on xorg, but afaik even when the xorg window manager freezes for some reason, you can still switch to a tty and killall X or something.

Because an xorg wm and xorg are separate. If xorg would hang, you wouldn't be able to switch ttys either. Hyprland is the xorg here.
Anyways offtopic.

any specific program I can use to try and reproduce this, or is it crashing randomly?

Its not crashing, its freezing, and seems to occur on NixOS

any specific program I can use to try and reproduce this, or is it crashing randomly?

Its not crashing, its freezing, and seems to occur on NixOS

Sorry, I meant freezing. So is it freezing randomly or is it triggered by a specific action or program?
I'm asking because of a similar issue I have with certain programs which either crash or freeze Hyprland. I'd like to know if this is related or not.

any specific program I can use to try and reproduce this, or is it crashing randomly?

Its not crashing, its freezing, and seems to occur on NixOS

Sorry, I meant freezing. So is it freezing randomly or is it triggered by a specific action or program? I'm asking because of a similar issue I have with certain programs which either crash or freeze Hyprland. I'd like to know if this is related or not.

On launch, it takes about like 3 seconds then permanent freeze of the whole compositor

@fufexan

Haven't seen this behaviour since @vaxerski fixed tty switching long ago. I'll update and check when I have time.

Hyprland completely freezes my laptop if I run ardour and do Ctrl + I to open the import window then close the window . the whole system just freezes indefinitely. Works fine with sway and Qtile Wayland.

Hyprland completely freezes my laptop if I run ardour and do Ctrl + I to open the import window then close the window . the whole system just freezes indefinitely. Works fine with sway and Qtile Wayland.

Can reproduce this on both Hyprland and Sway, seems to also be this wlroots issue.

Its on startup, for me, not anything else

Any progress on this?

None because I can't repro

None because I can't repro

If I can record it happening could that help?

nope. You can try running with ASan though if you can repro the hangup.

Seems to be fixed now!

im currently not using hyprland so i can't test, but i can reopen if it happens again


How to allow arbitrary file extension

Apologies if this is very straightforward, but I can't work it out.  How do I allow only files with an extension "abc" for example?
I've tried the following, with no joy:
allowedFileTypes: 'abc'
allowedFileTypes: '.abc'
allowedFileTypes: '*.abc'
allowedFileTypes: /^.*\.abc$'
allowedFileTypes: [ 'abc' ]

etc.
Thanks very much.

It is not extension based, but mime type based. You can enforce extensions by adjusting your .key value.

Thanks for the immediate answer!
On Thu, Apr 30, 2015 at 4:27 PM, Garik Suess<EMAIL_ADDRESS>wrote:

It is not extension based, but mime type based. You can enforce extensions
by adjusting your .key value.
—
Reply to this email directly or view it on GitHub
https://github.com/CulturalMe/meteor-slingshot/issues/93#issuecomment-97838671
.


Add advanced training option(metrics) for Azure Image classification

Azure auto ml for image classification deso does not support multiple metrics.

Closed: Not a priority now.


Fixed pagination bug

Resolves #74
-Added a load more button at the bottom for loading more pages
-Enables the user to access the footer for user demanded time

@VinayGadKerkar We had encountered a deployement bug, so we had rollbacked some changes. Please make sure to latest pull from main branch, and then add these changes

@VinayGadKerkar Awesome Work.


Issue 03: CUDA out of memory.

My doubts about this matter are due to the huge vocabulary. Because when I check the vocabulary size, it has a lot of words. On closer inspection, I see in both 'en' and 'vi' vocabulary some words unrelated to its language. Other  doubts are due to the config of model, so we need check it.

Both English and Vietnamese use the Latin alphabet, but Vietnamese adds diacritics to create special characters to represent different sounds. To filter out lines with words that do not belong to English and Vietnamese, we use appropriate regular expressions
As we see, lots of rows have some words which are unrelated to its language! (20% - 30% data)
If we use the raw dataframe to create the vocabulary, the size will be very large leading to 'Issue 03: CUDA out of memory'.
How about using df_filter? Smaller size vocabulary will be created. But we will ignore correct words in invalid lines containing incorrect words and make the model ineffective.
My solution: With the invalid rows, just remove the wrong words and use another words and valid words in valid rows to initialize a vocabulary. This will keep important word and minimize the unrelated words in vocabulary. (Reuslt: the size of the vocabulary has been halved)


Design: GC using minimal memory

I've been thinking about how to do GC over bigger-than-memory DDSes like SharedLog/Tree and wanted to invite collaboration on the problem.  Here is a first attempt at a design that I think is promising:
Algorithm

Each DDS produces a graph of GC nodes, reusing blocks of previously serialized nodes to avoid loading unchanged regions into memory when producing summaries.

During GC, we walk the graph of serialized GC nodes, inserting each node into a randomized bloom filter to build a conservative set of marked nodes.

If during the walk we encounter a node that intersects the bloom filter, we insert it into a traditional set. If we encounter a node already in the traditional set, we've detected a cycle and stop descending.

After the walk terminates, we intersect the resulting bloom filter with the total set of priorly created nodes to see what can be safely deleted.  (Nodes created after seq# of the GC graph are ignored.)

Being conservative, the bloom filter may falsely indicate some orphaned nodes were marked due to collision.  However, because the filter changes on each GC pass, previously missed nodes will eventually be collected.
Analysis
To a first approximation, GC remains O(n) and the memory required for GC is bounded by the size of the bloom filter.
There are two pathological cases:

A high collision rate, causing the size of the traditional set to grow until it dominates the memory cost.

...could be detected and the GC restarted with a different filter.
...but probably not worth worrying about if filter is reasonably constructed.

The graph that has a single cycle from the last node walked to the root will cause the entire graph to be walked twice before the cycle is detected.

...could be improved by including randomly sampled nodes in the traditional set.
...but also probably not worth worrying about since the pathological case is still O(n).

Tracked by AB#376


Google CalDAV wont import - 405 error

Please check that this issue hasn't been reported before.

[X] I searched previous Bug Reports and didn't find any similar reports.

Expected Behavior
Followed the instructions, adding the secret url from a calender to full calendar's url, then putting gmail user & password in, and clicking import.
Current behaviour
Calendar fails to add / import and comes up with error 405 in top right hand corner of plugin settings screen
JavaScript console output
No response
Steps to reproduce
adding the secret url from a calender to full calendar's url, then putting gmail user & password in, and clicking import.
Calendar information
Full calendar  plugin latest update
Which Operating Systems are you using?

[X] macOS
[ ] Windows
[ ] Linux
[ ] Android
[ ] iOS

Obsidian Version
1.1.16
Full Calendar Plugin Version
0.10.7
Checks

[ ] I have tried it with all other plugins disabled and the error still occurs.

Possible solution
No response
Comments
No response

Hi @sharetocreate, Google Calendar is not supported because it uses OAuth for CalDAV rather than HTTP basic authentication like iCloud, Fastmail and others. This is reported in the documentation: https://davish.github.io/obsidian-full-calendar/calendars/caldav/


read_csv does not set index name on empty dataframe

If foo.csv contains
x,y
1,2

then you get the normal behavior:
>>> df = pd.read_csv('foo.csv', index_col=0)
>>> list(df.columns)
['y']
>>> df.index.name
'x'

but if you remove the data row "1,2" in the CSV the index name gets dropped:
>>> df = pd.read_csv('foo.csv', index_col=0)
>>> list(df.columns)
['y']
>>> df.index.name
None

This means round-tripping with to_csv/read_csv fails for empty dataframes.

ok, will mark as a bug. want to do a pull-request to fix?

No, I don't have a patch.

@corr723 well if you would like to work on one would be gr8

No plan to work on one, sorry

Closed by #10302


#369 Add CLI options and commands list to readme file.

Codecov Report

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

@@           Coverage Diff           @@
##           master     #478   +/-   ##
=======================================
  Coverage   74.93%   74.93%
=======================================
  Files          13       13
  Lines         399      399
=======================================
  Hits          299      299
  Misses        100      100

Continue to review full report at Codecov.

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


Update Azure IoT extension to 0.10.11

Task name: AzureIoTEdgeV2
Description:

Update pinned version of Azure IoT CLI extension to 0.10.11 since 0.10.10 is broken from newest Azure CLI update 2.24.0
Removed temporary setuptools solution for Azure CLI, fix no longer needed

Documentation changes required: (Y/N) N
Added unit tests: (Y/N) N
Attached related issue: (Y/N)

https://github.com/Azure/azure-iot-cli-extension/issues/357

Checklist:

[x] Task version was bumped - please check instruction how to do it
[ ] Checked that applied changes work as expected

@Josh-01 Let us know what you think, thank you!


AttributeError: 'DistributedDataParallel' object has no attribute 'generate'

Hi,
I am trying to generate text with the model.generate() function of HuggingFace. However, it does not work with neither 1 or more than 1 GPUs, and I get the following error:

Traceback (most recent call last):
File "ft_main.py", line 234, in
main(args)
File "ft_main.py", line 169, in main
training_loop_accelerate(train_loader, val_loader, test_loader, tokenizer, model, optimizer, scheduler, accelerator, device, args)
File "/home/mathieu/multilingual_summarization/multilingual_summarization/ft_engine_accelerate.py", line 20, in training_loop_accelerate
scores = validate("val", val_loader, tokenizer, model, device, scores, args)
File "/home/mathieu/multilingual_summarization/multilingual_summarization/ft_engine_accelerate.py", line 148, in validate
summary_ids = model.generate(
File "/home/mathieu/anaconda3/envs/mlsumm/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1130, in getattr
raise AttributeError("'{}' object has no attribute '{}'".format(
AttributeError: 'DistributedDataParallel' object has no attribute 'generate'
ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 1) local_rank: 0 (pid: 44726) of binary: /home/mathieu/anaconda3/envs/mlsumm/bin/pytho$
ERROR:torch.distributed.elastic.agent.server.local_elastic_agent:[default] Worker group failed

I don't have any error when not in generation mode though.
My setup is the following:

pytorch 1.9.0
Transformers 4.6.1
Accelerate 0.4.0 built from source

I am using MT5ForConditionalGeneration as model.
And here is my validate function:
`def validate(mode, loader, tokenizer, model, device, scores, args):
model.eval()
losses = []
times = []
all_r1 = []
all_rl = []
scorer = rouge_scorer.RougeScorer(['rouge1', 'rougeL'], use_stemmer=False)

for idx, batch in tqdm(enumerate(loader)):
    t1 = time()
    text = batch["text"]
    text_lang = batch["text_lang"]
    text_inputs = batch["text_inputs"]
    summary = batch["summary"]
    summary_lang = batch["summary_lang"]
    summary_inputs = batch["summary_inputs"]

    for k in text_inputs.keys():
        text_inputs[k] = text_inputs[k].squeeze(1).to(device)
        summary_inputs[k] = summary_inputs[k].squeeze(1).to(device)

    outputs = model(**text_inputs, labels=summary_inputs["input_ids"])

    loss = outputs["loss"]
    losses.append(loss.item())
    times.append(time() - t1)

    del outputs
    del text_inputs
    del summary_inputs
    gc.collect()

    for i in range(len(summary)):
        src_lang = text_lang[i]
        tgt_lang = summary_lang[i]

        inputs = tokenizer(text[i], return_tensors="pt")
        inputs["input_ids"] = inputs["input_ids"][:, :args.max_length].to(device)
        inputs["attention_mask"] = inputs["attention_mask"][:, :args.max_length].to(device)

        if args.model_type == "mt5":
            summary_ids = model.generate(
                inputs['input_ids'],
                attention_mask=inputs["attention_mask"],
                use_cache=True,
                num_beams=args.num_beams,
                max_length=args.max_summary_length,
                early_stopping=True,
                repetition_penalty=args.repetition_penalty,
                length_penalty=args.length_penalty
            )`

You have not explained how you created your model or how you launch this script. The stack trace indicates there is a DistributedDataParallel involved and some distributed launch. As the error indicates the model wrapped in a DistributedDataParallel is not a Transformers model anymore and has no generate method, you need to access the model you wrapped like this: model.module to get back you Transformers model. So model.module.generate.

Calling model.module.generate() indeed fixed it, thank you @sgugger !

Closing this issue then, glad your problem is fixed!


Scheduler extension Proposal

Kubernetes scheduler schedules based on resources managed by Kubernetes. Scheduling based on opaque resource counting helps extending this further. But when there is a need for contextual scheduling for resources managed outside of kubernetes(example: place a pod where its storage is), there is no mechanism to do it today.
The proposal is to make kubernetes scheduler extensible by adding the capability to make http calls out to another endpoint to help achieve this functionality. I am curious whether you think the cloud provider abstraction is the right abstraction for implementation.
Here is a rough draft of what I am thinking about. Would like to solicit community feedback
type SchedulerExtension interface {

      // Filter based on provider implemented predicate functions.
      Filter(pod *api.Pod, nodes *api.NodeList) (*api.NodeList, error)

      // Prioritize based on provider implemented priority functions. Weight*priority is added up for each
      // such priority function. The returned score is added to the score computed by Kubernetes
      // scheduler. The total score is used to do the host selection.
      Prioritize(pod *api.Pod, nodes *api.NodeList) (*scheduler/api.HostPriorityList, error)

      // Inform the provider about the scheduling decision. This could also be done by the provider
      // watching apiserver pods/binding endpoint.
      Bind(pod *api.Pod, host string) error

      // Inform the provider about the unbind. To be called by apiserver in pod deletion path. This could
      // also be accomplished by watching apiserver pods endpoint.
      Unbind(pod *api.Pod, host string) error
}

cc @bgrant0607 @davidopp @erictune

You gave the example of "put a pod where its storage is".  This could be implemented via a node selector on the pod?

Speaking of labels, we'll need a way for Kubelets to export

node attributes, represented as labels
node resources, represented as non-zero capacity of generic counted resources

with these attributes/resources provided by a configuration file and/or plugin -- supporting both file (which kubelet would monitor for changes) and http would likely be adequate.
With respect to co-location and other commonly desired features, attempting to arrive at a general solution would be more desirable than hiding the behavior in an extension.
As for actual extension of the scheduler, there are a couple possible approaches:

Run a different scheduler. This is the approach used in Kubernetes-on-Mesos.
Add new fit and/or priority functions to the generic scheduler. This is a special case of (1) where most of the existing scheduling code is reused.

The current cloudprovider API isn't a good model -- see #2770 and #10503.
I do want to support multiple schedulers, including user-provided schedulers. The main thing we need is a way to not apply the default scheduling behavior, perhaps by namespace, using some sort of "admission control" plugin. I want that to be a fairly generic mechanism, since I expect to need it at least for horizontal auto-scaling and vertical auto-sizing, as well, if not other things in the future. This is related to the "initializers" topic (#3585).
A custom scheduler would then need to be configured for which pods to schedule. This probably requires adding information of some form to the pods. We should take that into account when thinking about the general initializer mechanism.
The custom scheduler should then be able to watch all pods and nodes to keep its state up to date, but I imagine we could add more information, events, or something to make this more convenient, as requested in #1517.
@timothysc @eparis

Also, I think the scheduler is a candidate for moving to its own github project, once we figure out how to manage testing, releases, etc.

@erictune
In this case, the pod user doesn't need to know where the volume is actually deployed. Also, it may not be a predicate, but a priority function that prefers to deploy the pod on the host where the volume physically resides. There are a few more examples I can think of:
a) Scheduling based on network requirements (connectivity to a specific subnet that doesn't span all nodes in the cluster)
b) Scheduling based on qos requirements
(These are not supported in the pod spec today. They may be some day, but a provider may have unique requirements that are not captured in the stock scheduler.)
@bgrant0607
I am following #10503 and prototyping this scheduling extension using the http cloud provider.
For our use case, we have qos, network, storage requirements that affect scheduling. A different vendor may have different requirements. If there is a way to generically extend the scheduler, it will help everyone.
We would also like to be able to use the stock kubernetes distribution (through one of the many OS vendors who support it) rather than ship our own scheduler. Hence the push for extensibility.
Worth discussing tomorrow or face/face meeting or at Linuxcon?

Aspects of this topic were discussed earlier in #9920

How about the August 7 community hangout?

@bgrant0607
Thanks! I am out that week and the week after on vacation. I am not sure if there will be a hangout the week of Linuxcon. But I will be there Mon-Wed and available anytime to discuss.

cc @smarterclayton @eparis @ncdc

I agree with @bgrant0607 that writing your own scheduler is probably a better direction. We should try to make the default Kubernetes scheduler factored in a way that people who want to write their own schedulers can import/reuse the core parts as a library, otherwise there will be a lot of code duplication across all the schedulers people write. @lavalamp 's controller framework and modeler are steps towards that, in a sense.
But it would be great to hear more about your thoughts.

@davidopp
Thanks for sharing your thoughts. Technically, either approach works. As I mentioned earlier in the thread, its more for business reasons we would like to use the stock kubernetes distribution from one of the OS vendors. They sell the support for the distro. If we ship our own scheduler, it violates that support model.
I will post some prototype changes in the next couple of days to this thread. The scope of change to the scheduler is minimal. Hope that alleviates some of the concerns. Will discuss the rest hopefully on a call/in person.

An extensible scheduler has value beyond a third-party support model.  Being able to plug more flexible placement information to an existing Kubernetes deployment where the default scheduler is doing a fine job otherwise saves rework and porting/updating every time the default scheduler (or the plugin) changes.
Having many different people release their own schedulers (even with libraries) seems to defeat the point of a common project that takes the best of what everyone has to offer and instead makes people choose all-or-nothing with a monolithic scheduler.
There may be valid concerns over destabilizing the scheduler with non-deterministic responses.  We can overcome these as other projects have done with well defined interfaces. The plugin is responsible for adhering to the interface and any response criteria that are established.  Are there any specific concerns with the concept of an extensible scheduler or is this more a matter of priority?

@davidopp @bgrant0607
Sample code here - https://github.com/ravigadde/kube-scheduler/commit/23ad25bcc278ffdab9fc2818ae08faaec6e1163b
Please let me know your thoughts.

Sorry, @ravigadde. Still digging out of the pre-1.0 backlog.
I have a few quick comments:

Scheduler extensions should not be tied to cloudprovider in any way. There are many reasons why people might want to extend the scheduler.
We have existing mechanisms for adding new filtering and prioritization passes. Why not just use/improve them? Then you'd just need to add bind/unbind hooks.
FYI/FWIW, we plan on making significant changes to the scheduler, for performance/scale, improvements in the way prioritization works, and in order to take observed resource usage into account. You could continue to develop on the current implementation in the meantime, but we may fork or rewrite it.

@bgrant0607
Thanks for your comments.

I was trying to latch on to an existing abstraction. I can introduce a new abstraction.
None that I am aware of without needing to change the binary. As I have mentioned before, we have a requirement to be able to call out from the stock scheduler binary for our extensions.
With regards to bind/unbind calls, in our case some resources are tracked outside of kubernetes. The extension is not aware of the final node selection and hence needs to be made aware to account for resources used.
Thanks, any specific threads that I can track?

@ravigadde Please correct me if I'm wrong -- IIUC, your PR allows the scheduler to outsource "Prioritize" and "Filter" operations (i.e. priority functions and predicates) to an external process which it contacts via HTTP (this other process also has endpoints for "bind" and "unbind" so it can be informed of changes in cluster state--BTW I'm not sure this is sufficient since it also needs to know each machine's capacity, labels, etc.). Is that correct?
If that's correct, I'm not understanding why this is considered to be using "stock kubernetes distribution" whereas writing your own scheduler is not. The only difference I see is the direction of the communication -- in your model, Kubernetes scheduler calls out to your scheduler, while in the model @bgrant0607 and I were discussing above (see also #11793), your scheduler calls into Kubernetes to watch state and post bindings.
That said, I guess there isn't any reason why we couldn't have the scheduler call out to another process (modulo performance concerns). But I agree with @bgrant0607 that there's no reason to use the cloud provider interface -- you could probably just configure the identity of the remote endpoint using the scheduler config file (see plugin/pkg/scheduler/api/).

@davidopp
Thanks for your response.
Yes, that is correct. The other process that is handling these calls is aware of node resources/labels. It watches apiserver for any changes.
There are subtle differences in the two models (mostly non-technical).
a) kubernetes binaries are provided, maintained and supported by OS/OSS vendor. Dont want to make an exception for the scheduler.
b) We could technically make a fork and add our extensions to the scheduler. There will be sync overhead which will continue to get worse over time. Also, if something breaks, the onus is on us to prove that our scheduler is not significantly different from the stock version.
c) kubernetes binaries can be independently upgraded without any dependency on us (as long as the APIs dont change).
The proposal aims to address the above issues. I originally intended for apiserver to invoke Unbind on pod deletion so the resources associated with the pod can be cleaned up. Hence needed an interface that can be shared by both. But this could also be achieved by watching the apiserver for pod deletion. Will go with your suggestion of using the scheduler config file and create a PR. Please let me know if anything is not clear, we can discuss in the call tomorrow.

@ravigadde I'd be happy to discuss with you offline. Send me an email at (my github username) @ google.com and we can arrange a time.

@ravigadde
I don't see how this proposal addresses your expressed concerns.
a) Your custom scheduling logic would be in a non-maintained/supported binary.
b) Your custom scheduling logic would amount to a fork.
c) You would be responsible for upgrading your own scheduling component.
As for this specific API:
We need to be able to run the "fit" check in several places. In addition to the scheduler, we already also run it in Kubelet, and have discussed also running it in apiserver, upon calls to /binding. We're not going to call out to another endpoint in all those places.
Also, while we need to support the current scheduler configuration for some time, we anticipate creating a new approach prioritization, and would like to avoid creating hard-to-remove dependencies upon the current approach.
Notification of binds and unbinds is insufficient to communicate the state of the cluster. How would the scheduler extension get the initial state? How would it update its state after an outage of the apiserver? What should be done if the scheduler were unable to contact your extension? The logic needs to be "level-based". https://github.com/kubernetes/kubernetes/blob/master/docs/design/principles.md#control-logic
Is there something we could do to make it easier to fork and extend the scheduler, such as refactoring more of it into reusable libraries / frameworks?
We could also investigate how to make it easier to keep a scheduler's state up to date using get/watch: #1517. That will likely happen as a consequence of increasing the amount of caching done in the scheduler.

Meeting summary:

Drop bind and unbind. They are insufficient and unnecessary.
We need to align the extension HTTP(S) API design with other HTTP-based extensions, such as the cloudprovider #10503
For reasons described above, this specific extension API would be tied to the existing scheduler
This API would be implemented behind existing fit and prioritization plugin and configuration mechanisms, would be optional, and would not be enabled by default.
If we were to perform optimizations that would cause nodes to not be evaluated, we'd need to disable them if such an API were enabled.
Likely this API would not meet our scaling goals, so we would not recommend it for high-scale deployments
The fit predicates would not be called from anywhere but the scheduler, which has implications for #12744

Meeting summary:

Drop bind and unbind. They are insufficient and unnecessary.

In the proposal, or our API?

@smarterclayton - In the proposal.
@bgrant0607 - Thank you for the summary.

imho this whole proposal sounds like what you really want is #17197

No it isn't. I will explain in the other thread.

This was implemented in #13580
ref/ #11470


Create cfa-rtgam-pipeline repo

I think it would be informative to consider creating a cfa-rtgam-pipeline repository based on cfa-epinow2-pipeline but for the in development RtGam package.
This could help with thinking about design of the pipeline repositories (including cfa-epinow2-pipeline currently).

Yes this is the goal! Workflow in my mind is:

Get EpiNow2 pipeline running
Think through a second modeling pipeline
Move shared non-EpiNow2 specific functions into an upstream dependency package

Alternatively, the functions in extract_diagnostics, fit_model, and write_output could be rewritten to dispatch on class, and this repo could be called cfa-rt-pipeline.
So there are two options:

cfa-pipeline-tools for all shared, then model specific R packages
cfa-rt-pipeline containing both tools and specific methods for models

I think I favour 2. and 1. seems a bit much.
Interested to hear other's POV?

One possible benefit of 2. is that suppose we want to implement some kind of model stacking or averaging functionality. Then perhaps it's simple to do that from within one package. It also feels to me like having methods for each model enforces some kind of shared interoperability which is harder at a distance when split across packages. We can also then test all of the models and methods using the same approaches.
I think this is quite a big decision and something we might want to use some kind decision record for.
I suppose the counter point, and perhaps where CFA is going, is that in future we want to use models which are not writen in R, and this cfa-rt-pipeline single package limits us in some ways there?


ng-maxlength without required

Is there a way I can check the maxlength of a string without attaching the required tag?

You can edit the validations template to do so:
<div ng-messages="field.$error"
     class="validation"
     ng-show="attrs.required==''|| attrs.required">

Just remove the ng-show condition here.

Thanks alot!

Hm weird. That should work. I assume your input is wrapped into a form?

ping @devphil0 .

As you're assuming, I wrapped the input into a form. The directive input-decimal allows decimal numbers only.
I'm using the html-attribute maxlength as solution - you can close this issue.
Thanks for your deployment.


Support for MASM64

Hello,
This lsp is amazing! Does it work for MASM64?

Hi! It's not something I've explicitly tested for, but the LSP should have limited support for MASM64. Nearly all of the instruction information (used for instruction hover and autocomplete support) is based off of the xml files produced by the opcodes python package, which indicates that MASM instruction names are supported here.
I'm really glad you like the project! If you run into any issues or have a feature request in mind, don't hesitate to open up an issue and/or discussion :).

Yeah, unfortunately the only instruction forms supported by the python opcodes repo are GAS and GO. The NASM names should still be in the autocomplete lists, but the associated documentation won't be there. Adding the NASM forms would be a great addition to the project, but it would require either a change upstream or some automated means of collecting the NASM documentation here. Once we have the data in a usable form (e.g. this repo's xml file containing x86 instructions) adding support is pretty straightforward.
This is something I can look into more once school wraps up, but if there's any relevant resources/ documentation (e.g. the ARM resources listed in this placeholder issue )you could link in the meantime to get started that would be greatly appreciated :).

Awesome, thanks for creating this repo, really!
I'll have a look and see what I can do to contribute. I'm mostly interested in MASM64 so I'll probably focus on that. I hope to contribute to the repo soon. Good luck with school and thanks!

Didn't see anything related to MASM in the xml in the OpCodes repo btw, weird...

Awesome, thanks for creating this repo, really!

I've contributed a few features recently, but the majority of the credit goes to @bergercookie. Really glad it's been helpful for you though :)

I'll have a look and see what I can do to contribute. I'm mostly interested in MASM64 so I'll probably focus on that. I hope to contribute to the repo soon. Good luck with school and thanks!

That would be great, but no pressure. Thank you!

Hi, from my understanding, opcodes are just the instructions that the ISA has. So shouldn't it be the same for any x8664 assembler?

I meant to refer to the NASM-style suggestions you asked about in the earlier comments in this issue rather than the opcodws, but misspoke. Sorry about that! 😁

https://github.com/HJLebbink/asm-dude
this might help

https://github.com/HJLebbink/asm-dude
this might help

Thanks so much for the source! It's going to take me some time to work out the parsing code so this information can get loaded in by asm-lsp, but this should be pretty doable. From what I've read through, I'll be able to pull out instructions with descriptions and operands, as well as some assembler directives for MASM and NASM.
Just to be clarify, as this isn't my area of expertise, the instruction forms in the file aren't labeled with a particular assembler flavor. For example,
XOR	R/M8,IMM8	8086	XOR R/M8,IMM8	r/m8 XOR imm8.
XOR	R/M8,R8	8086	XOR R/M8,R8	r/m8 XOR r8.
XOR	R/M16,IMM16	8086	XOR R/M16,IMM16	r/m16 XOR imm16.
XOR	R/M16,IMM8	8086	XOR R/M16,IMM8	r/m16 XOR imm8 (sign-extended).
XOR	R/M16,R16	8086	XOR R/M16,R16	r/m16 XOR r16.
XOR	R/M32,IMM32	386	XOR R/M32,IMM32	r/m32 XOR imm32.
XOR	R/M32,IMM8	386	XOR R/M32,IMM8	r/m32 XOR imm8 (sign-extended).
XOR	R/M32,R32	386	XOR R/M32,R32	r/m32 XOR r32.
XOR	R/M64,IMM32	X64	XOR R/M64,IMM32	r/m64 XOR imm32 (sign-extended).
XOR	R/M64,IMM8	X64	XOR R/M64,IMM8	r/m64 XOR imm8 (sign-extended).
XOR	R/M64,R64	X64	XOR R/M64,R64	r/m64 XOR r64.
XOR	R8,R/M8	8086	XOR R8,R/M8	r8 XOR r/m8.
XOR	R16,R/M16	8086	XOR R16,R/M16	r16 XOR r/m16.
XOR	R32,R/M32	386	XOR R32,R/M32	r32 XOR r/m32.
XOR	R64,R/M64	X64	XOR R64,R/M64	r64 XOR r/m64.

Am I correct in reading that the information here corresponds to MASM/NASM-style suggestions for the XOR instruction?

Hello, glad you liked the source, I am more than happy to help.
I believe these would be all the variants of the XOR instruction which should work for both MASM & NASM.
Here are some more resources:
https://www.felixcloutier.com/x86/
https://software.intel.com/en-us/download/intel-64-and-ia-32-architectures-sdm-combined-volumes-1-2a-2b-2c-2d-3a-3b-3c-3d-and-4
Do you need to parse the instructions into some xml format  for asm-lsp to consume?
I think the main differences between MASM & NASM is things that are specific to the assemblers themselves like macros and procedure definitions and such but the general x8664 instructions should be the same if I'm not mistaken.

Do you need to parse the instructions into some xml format for asm-lsp to consume?

That's the basic approach yeah. Currently all of our x86/x86-64 instruction info comes from the opcodes python project which we've copied into the repo under docs_store/opcodes/raw/x86.xml and docs_store/opcodes/raw/x86_64.xml As you noted earlier, the instruction forms from these sources only include gas and go names. The basic approach I was planning on going with was to parse the information file from asm-dude into an xml file that can then be used to add additional forms  with nasm/masm names to the existing Instruction structs at load time.
To illustrate, we have the following snippet from docs_store/opcodes/raw/x86.xml representing the XOR instruction:
<Instruction name="XOR" summary="Logical Exclusive OR">
    <InstructionForm gas-name="xorb" go-name="XORB">
      <Operand type="al" input="true" output="true"/>
      <Operand type="imm8"/>
      <Encoding>
        <Opcode byte="34"/>
        <Immediate size="1" value="#1"/>
      </Encoding>
    </InstructionForm>
    <InstructionForm gas-name="xorb" go-name="XORB">
      <Operand type="r8" input="true" output="true"/>
      <Operand type="imm8"/>
      <Encoding>
        <Opcode byte="80"/>
        <ModRM mode="11" reg="6" rm="#0"/>
        <Immediate size="1" value="#1"/>
      </Encoding>
    </InstructionForm>
...
</Instruction>

After parsing the additional information from asm-dude, we could insert additional InstructionForm entries for each corresponding instruction. An entry in asm-dude like the following:
XOR	R/M8,IMM8	8086	XOR R/M8,IMM8	r/m8 XOR imm8.

could look like the following after being parsed and inserted into the main xml file
<InstructionForm nasm-name="xor" masm-name="xor">
      <Operand type="r8" input="true" output="true"/>
      <Operand type="imm8"/>
</InstructionForm>
<InstructionForm nasm-name="xor" masm-name="xor">
      <Operand type="m8" input="true" output="true"/>
      <Operand type="imm8"/>
</InstructionForm>

We could then add nasm and masm assembler configuration options for .asm-lsp.toml, allowing the user to choose whether they these forms should be displayed for things like documentation hover (as is aslready the case with gas and go).

I think the main differences between MASM & NASM is things that are specific to the assemblers themselves like macros and procedure definitions and such but the general x8664 instructions should be the same if I'm not mistaken.

👍
Does that sound right? Thanks so much for the help! :)

Oh also for reference, this is the main asm-dude file to parse:
signature-hand-1.txt


Use exact version in dependencies / devDependencies

We should use exact versions in the dependencies and devDependencies to:

have a reproducible build
have a good control on the dependencies we use (some might not respect semver)
be able to use a specific version of the toolkit (see bellow)

Eg:

I have @axa-fr/react-toolkit-all version 1.3.13 in my package.json
I want to rollback to version 1.3.12
Because all dependencies of 1.3.12 (see package.json) are "^1.3.12"  I still have the 1.3.13 when I do a npm install. The only way to force the 1.3.12 is to list all the dependencies in my package.json.

I also had an issue in #625 with @types/react-modal": "^3.6.0 which, for some reason, decided to pull the 3.10.5 which breaks the Modal component.

@youf-olivier what do you think?

We have somes issues with packages. I don't really know what we can do exactly. We discussed about this few days ago with @arnaudforaison . You can see that with him. And then, I dont know if it is the same problem 🧐

Ok, so maybe we can work on this when fixing #627


The getToken call fails without a proper error message.

Client: Mobile
The login call with "scope":["openid","email","profile","offline_access"] is successful. The getToken call with grant_type refresh_token and the refresh token obtained from the login call, fails. The failure message string contains object ( "[Error: [object Object]]") instead of the actual error message or object.

Resolved here: https://github.com/authorizerdev/authorizer-js/commit/0376a987628b8e2c90607df58d3c4b59fa0f92b5


⚠ Bofrost.at has degraded performance

In 3f4e415, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 926 ms

Resolved: Bofrost.at performance has improved in d474dd3 after 9 minutes.


Fix 398 - Implement solution to handle URL redirections

Summary:
This PR provides support to handle URL redirections.
Expected behavior:
gtfs-validator should be able to download .zip files when content to download has been moved.
Please make sure these boxes are checked before submitting your pull request - thanks!

[x] Run the unit tests with gradle test to make sure you didn't break anything
[x] Format the title like "Fix #<issue_number> - " (for example - "Fix #1111 - Check for null value before using field")
[x] Linked all relevant issues
~[] Include screenshot(s) showing how this pull request works and fixes the issue(s)~

Original issue #398 tried to validate http://transitfeeds.com/p/orange-county-transportation-authority/197/latest/download
Note that fixing #398 made appear another bug (NPE is thrown by StopTimeValidator - which is not caused by the fix provided). A new issue will be opened, to fix that one.

java.net.HttpURLConnection does not define HTTP response code 307 and 308. Two options:

leverage request header field : https://github.com/MobilityData/gtfs-validator/pull/433/commits/8863614f7152e63032e896c439051c7cf46f927c
define class constant corresponding to int 307  and 308: https://github.com/MobilityData/gtfs-validator/pull/433/commits/6be11d669fd4f628137805fbc028c1d7c827bf63


SafeAreaEffect helper for iOS specific styling

Description of Change
Added the SafeArea effect. This is used to be able to add safe area padding onto each element on the page instead of just on the page level.
Bugs Fixed

Related to issue #145

API Changes
List all API changes here (or just put None), example:
Added:

SafeAreaPaddingEffect
SafeAreaPaddingEffectRouter
SafeAreaPaddingEffectRouter implementation for iOS
SafeAreaPadding struct

PR Checklist

[ ] Has tests (if omitted, state reason in description)
[ ] Has samples (if omitted, state reason in description)
[X] Rebased on top of master at time of PR
[X] Changes adhere to coding standard
[ ] Updated documentation

There's a few things left here, hence the draft status.

Probably need a TypeConverter to handle this nicely on the XAML side.
Need to whip up a bit of a sample + scenarios for testing.

LGTM!


Show helpful error message against invalid number literal like '.42'

Dot-started floating-point number like '.42' is not supported on Crystal. However compiler does not tell us this, so this fix adds to detect such a literal and to show helpful error message.
For example, old compiler shows an error message:
$ crystal run foo.cr
Syntax error in foo.cr:1: unexpected token: .

foo = .42
      ^

And this PR compiler shows:
$ ./bin/crystal run foo.cr
Using compiled compiler at `.build/crystal'
Syntax error in foo.cr:1: .1 style number literal is not supported, put 0 before dot

foo = .42
      ^

If you have more helpful error message text, please tell me. You know, my English is not good.

I'd suggest a wording like floating-point literals cannot omit a leading zero

Or just follow the octal literal message (octal constants should be prefixed with 0o):

float constants should be prefixed with 0

float literals should be started with decimal digit

@ysbaddaden I think the wording should differentiate between constant and literal. So we should probably change the octal message to literal as well. An prefixing float literals with 0 in general would actually be wrong (like 03.141).
What about:
float literals require an integer part, omitting `0` is not supported

What happens if you write foo.42?

Why Crystal not supporting .123 type floats? Any reason?

@david50407 .123 number conflicts ... operator: 1...2 means (1)...(2) or (1)..(.2)?

@asterite .42 is detected by the lexer, so an error against foo.42 is also .1 style number literal is not supported.... Direct foo.42 is rare case, but when we have a macro foo.{{name}} and name is given as number by carelessness, then we get same error. I think it is not helpful. Should I let the parser detect .42 inside parse_atomic_without_location?

@MakeNowJust It's hard.
I don't know if we should give an error. I wouldn't expect this:
MOV EAX, 1

to give an error:
MOV EAX, 1
^
this is not assembler, it's Crystal

(this is not C, it's Crystal)
I mean, we can't give an error for every idiom or piece of syntax that appears in other languages. If you get an error in .42 saying "unexpected '.'" then it's probably clear then this style of numbers if not supported.

@asterite Nevertheless I believe such an error message is helpful and useful. For example ruby shows warning message for .42:
$ ruby -e .42
-e:1: no .<digit> floating literal anymore; put 0 before dot
-e:1: syntax error, unexpected '.'

There is a difference between those cases: writing .42 instead of 0.42 is typically a mistake by a newcomer to Crystal coming from a language where you can omit leading zeros. For them a more detailed error message would be helpful and encouraging.

@MakeNowJust oops I missed that possible
How about just give a nicer tip like:

Syntax error in foo.cr:1: unexpected token: .
Tip: If you are trying to declaring a float constant, put 0 before dot.

@david50407  unexpected_token method takes msg optional argument to show additional information. For example:
$ echo 'def foo bar; end' > foo.cr
$ crystal run foo.cr
Syntax error in foo.cr:1: unexpected token: bar (parentheses are mandatory for def arguments)

def foo bar; end
        ^

I'll try to implement by using it.

Even though it's a small thing, I believe this kind of small things makes a language more friendly to newcomers :+1:

I'd like to see this merged. It's not a strict necessity, but as @sdogruyol puts it, a small think to make the language more friendly to its users (in this case newcomers specifically).
My preferred error message: float literals require an integer part, a `0` integer part can't be ommited

@MakeNowJust can you rebase this? Let us know otherwise. Thanks!

rebase is done.


:sparkles: Mixup variants + Cross validation + Temperature scaling in routines

Added Mixup and some variants, with an abstract class to make it easy to implement new variants
Created CrossValDataModule to be able to run cross validation experiments and Abstract DataModule class to instantiate the dataloaders for the cross validation.
Added Temperature scaling in classification routines, through on_test_start callback.

Ouch, the coverage :rofl:

#qbouniot, could you start another PR using a branch that is not called main (but synced with main)? Linked to #58.


EWS connection problem

I am having problem with getting a connection to Exchange account.
I am using office 365 plan E3.
Here is my code for connectVia autodiscover:
public static class RedirectionUrlCallback implements IAutodiscoverRedirectionUrl {
    public boolean autodiscoverRedirectionUrlValidationCallback(String redirectionUrl) {
        return redirectionUrl.toLowerCase().startsWith("https://");
  }
}

ExchangeService service = new ExchangeService();
service.setCredentials(new<EMAIL_ADDRESS><password>));
service.autodiscoverUrl(email, new RedirectionUrlCallback());

Problem with this code is sometimes this code works and sometimes this doesnot work.
When it doesnot work the exception I get is:
Jan 19, 2015 1:28:15 PM microsoft.exchange.webservices.data.AutodiscoverService tryGetEnabledEndpointsForHost
WARNING: Error while preparing asynchronous connection.
microsoft.exchange.webservices.data.EWSHttpException: Unable to open connection to https://<company>.onmicrosoft.com/autodiscover/autodiscover.xml
    at microsoft.exchange.webservices.data.HttpClientWebRequest.prepareAsyncConnection(HttpClientWebRequest.java:199)
    at microsoft.exchange.webservices.data.AutodiscoverService.tryGetEnabledEndpointsForHost(AutodiscoverService.java:1506)
    at microsoft.exchange.webservices.data.AutodiscoverService.tryGetAutodiscoverEndpointUrl(AutodiscoverService.java:1314)
    at microsoft.exchange.webservices.data.AutodiscoverService.getSettings(AutodiscoverService.java:1098)
    at microsoft.exchange.webservices.data.AutodiscoverService.getUserSettings(AutodiscoverService.java:1006)
    at microsoft.exchange.webservices.data.AutodiscoverService.internalGetSoapUserSettings(AutodiscoverService.java:949)
    at microsoft.exchange.webservices.data.AutodiscoverService.getUserSettings(AutodiscoverService.java:1836)
    at microsoft.exchange.webservices.data.ExchangeService.getAutodiscoverUrl(ExchangeService.java:3531)
    at microsoft.exchange.webservices.data.ExchangeService.autodiscoverUrl(ExchangeService.java:3458)
    at ews_managed_api.Ex01_FoldersSync.connectViaExchangeAutodiscover(Ex01_FoldersSync.java:48)
    at ews_managed_api.Ex01_FoldersSync.main(Ex01_FoldersSync.java:55)

Jan 19, 2015 1:28:16 PM microsoft.exchange.webservices.data.AutodiscoverService tryGetEnabledEndpointsForHost
WARNING: Error while preparing asynchronous connection.
microsoft.exchange.webservices.data.EWSHttpException: Unable to open connection to https://autodiscover.<company>.onmicrosoft.com/autodiscover/autodiscover.xml
    at microsoft.exchange.webservices.data.HttpClientWebRequest.prepareAsyncConnection(HttpClientWebRequest.java:199)
    at microsoft.exchange.webservices.data.AutodiscoverService.tryGetEnabledEndpointsForHost(AutodiscoverService.java:1506)
    at microsoft.exchange.webservices.data.AutodiscoverService.tryGetAutodiscoverEndpointUrl(AutodiscoverService.java:1314)
    at microsoft.exchange.webservices.data.AutodiscoverService.getSettings(AutodiscoverService.java:1098)
    at microsoft.exchange.webservices.data.AutodiscoverService.getUserSettings(AutodiscoverService.java:1006)
    at microsoft.exchange.webservices.data.AutodiscoverService.internalGetSoapUserSettings(AutodiscoverService.java:949)
    at microsoft.exchange.webservices.data.AutodiscoverService.getUserSettings(AutodiscoverService.java:1836)
    at microsoft.exchange.webservices.data.ExchangeService.getAutodiscoverUrl(ExchangeService.java:3531)
    at microsoft.exchange.webservices.data.ExchangeService.autodiscoverUrl(ExchangeService.java:3458)
    at ews_managed_api.Ex01_FoldersSync.connectViaExchangeAutodiscover(Ex01_FoldersSync.java:48)
    at ews_managed_api.Ex01_FoldersSync.main(Ex01_FoldersSync.java:55)

microsoft.exchange.webservices.data.AutodiscoverLocalException: The Autodiscover service didn't return an appropriate URL that can be used for the ExchangeService Autodiscover URL.
    at microsoft.exchange.webservices.data.ExchangeService.getEwsUrlFromResponse(ExchangeService.java:3589)
    at microsoft.exchange.webservices.data.ExchangeService.getAutodiscoverUrl(ExchangeService.java:3537)
    at microsoft.exchange.webservices.data.ExchangeService.autodiscoverUrl(ExchangeService.java:3489)
    at ews_managed_api.Ex01_FoldersSync.connectViaExchangeAutodiscover(Ex01_FoldersSync.java:48)
    at ews_managed_api.Ex01_FoldersSync.main(Ex01_FoldersSync.java:55)

When I loginto my account from  https://login.microsoftonline.com/
I get url like this: https://pod51059.outlook.com/owa/#path=/mail
Here is my code for manual Url setting:
ExchangeService service = new ExchangeService();
ExchangeCredentials credentials =new WebCredentials(email, password);
service.setUrl(new URI("https://pod51059.outlook.com/ews/exchange.asmx"));
service.setCredentials(credentials);
service.setTraceEnabled(false);
Folder inbox = Folder.bind(service, WellKnownFolderName.Inbox);
System.out.println("messages: " + inbox.getTotalCount());

This code(of manual url setting) was working fine even 3 days ago. But now getting exceptions like this:
microsoft.exchange.webservices.data.ServiceRequestException: The request failed. The request failed. The remote server returned an error: (403)Forbidden
    at microsoft.exchange.webservices.data.SimpleServiceRequestBase.internalExecute(SimpleServiceRequestBase.java:58)
    at microsoft.exchange.webservices.data.MultiResponseServiceRequest.execute(MultiResponseServiceRequest.java:138)
    at microsoft.exchange.webservices.data.ExchangeService.bindToFolder(ExchangeService.java:317)
    at microsoft.exchange.webservices.data.ExchangeService.bindToFolder(ExchangeService.java:335)
    at microsoft.exchange.webservices.data.Folder.bind(Folder.java:46)
    at microsoft.exchange.webservices.data.Folder.bind(Folder.java:95)
    at ews_managed_api.Ex01_FoldersSync.connectViaExchangeManually(Ex01_FoldersSync.java:40)
    at ews_managed_api.Ex01_FoldersSync.main(Ex01_FoldersSync.java:57)
Caused by: microsoft.exchange.webservices.data.ServiceRequestException: The request failed. The remote server returned an error: (403)Forbidden
    at microsoft.exchange.webservices.data.ServiceRequestBase.validateAndEmitRequest(ServiceRequestBase.java:630)
    at microsoft.exchange.webservices.data.SimpleServiceRequestBase.internalExecute(SimpleServiceRequestBase.java:46)
    ... 7 more
Caused by: microsoft.exchange.webservices.data.HttpErrorException: The remote server returned an error: (403)Forbidden
    at microsoft.exchange.webservices.data.ServiceRequestBase.getEwsHttpWebResponse(ServiceRequestBase.java:682)
    at microsoft.exchange.webservices.data.ServiceRequestBase.validateAndEmitRequest(ServiceRequestBase.java:625)
    ... 8 more

I have used the remote connectivity analyzer: https://testconnectivity.microsoft.com
the connectivity test result was successful.
Now can anyone help me to solve this problem? Specially tell me why this sometimes works
and most of the time does not work. I need a way that always works for setup connection.
Please also note that when I was able to get connection using these codes, I was able to do other kind of works like, retrieving mails, retrieving folder names, setting read flags.

maybe try connecting via EWS Editor to test your account with the settings you mentioned. If this is working and you are facing errors with the api maybe we need to do some more investigation on this issue. Maybe you also can switch your tracing on for more feedback about requests and responses in ews-java-api.

Thanks André Behrens for your reply.
I tried the EWSEditor on my windows pc. I was able to connect both
by "Autodiscover Email" and "Service URL" options.
In my java code I have turned on the trace as you said.
Today my "setting url manually" is working(in ews-java-api)
But autodiscover is still not working and it is showing different exception than yesterday.
Here is the exception today I am getting from autodiscover:
Jan 20, 2015 11:06:36 AM microsoft.exchange.webservices.data.AutodiscoverService tryGetEnabledEndpointsForHost
WARNING: Error while preparing asynchronous connection.
microsoft.exchange.webservices.data.EWSHttpException: Unable to open connection to https://<company>.onmicrosoft.com/autodiscover/autodiscover.xml
	at microsoft.exchange.webservices.data.HttpClientWebRequest.prepareAsyncConnection(HttpClientWebRequest.java:199)
	at microsoft.exchange.webservices.data.AutodiscoverService.tryGetEnabledEndpointsForHost(AutodiscoverService.java:1506)
	at microsoft.exchange.webservices.data.AutodiscoverService.tryGetAutodiscoverEndpointUrl(AutodiscoverService.java:1314)
	at microsoft.exchange.webservices.data.AutodiscoverService.getSettings(AutodiscoverService.java:1098)
	at microsoft.exchange.webservices.data.AutodiscoverService.getUserSettings(AutodiscoverService.java:1006)
	at microsoft.exchange.webservices.data.AutodiscoverService.internalGetSoapUserSettings(AutodiscoverService.java:949)
	at microsoft.exchange.webservices.data.AutodiscoverService.getUserSettings(AutodiscoverService.java:1836)
	at microsoft.exchange.webservices.data.ExchangeService.getAutodiscoverUrl(ExchangeService.java:3531)
	at microsoft.exchange.webservices.data.ExchangeService.autodiscoverUrl(ExchangeService.java:3458)
	at ews_managed_api.Ex00_ConnectionTest.connectViaExchangeAutodiscover(Ex00_ConnectionTest.java:36)
	at ews_managed_api.Ex00_ConnectionTest.main(Ex00_ConnectionTest.java:45)

Jan 20, 2015 11:06:37 AM microsoft.exchange.webservices.data.AutodiscoverService tryGetEnabledEndpointsForHost
WARNING: Error while preparing asynchronous connection.
microsoft.exchange.webservices.data.EWSHttpException: Unable to open connection to https://autodiscover.<company>.onmicrosoft.com/autodiscover/autodiscover.xml
	at microsoft.exchange.webservices.data.HttpClientWebRequest.prepareAsyncConnection(HttpClientWebRequest.java:199)
	at microsoft.exchange.webservices.data.AutodiscoverService.tryGetEnabledEndpointsForHost(AutodiscoverService.java:1506)
	at microsoft.exchange.webservices.data.AutodiscoverService.tryGetAutodiscoverEndpointUrl(AutodiscoverService.java:1314)
	at microsoft.exchange.webservices.data.AutodiscoverService.getSettings(AutodiscoverService.java:1098)
	at microsoft.exchange.webservices.data.AutodiscoverService.getUserSettings(AutodiscoverService.java:1006)
	at microsoft.exchange.webservices.data.AutodiscoverService.internalGetSoapUserSettings(AutodiscoverService.java:949)
	at microsoft.exchange.webservices.data.AutodiscoverService.getUserSettings(AutodiscoverService.java:1836)
	at microsoft.exchange.webservices.data.ExchangeService.getAutodiscoverUrl(ExchangeService.java:3531)
	at microsoft.exchange.webservices.data.ExchangeService.autodiscoverUrl(ExchangeService.java:3458)
	at ews_managed_api.Ex00_ConnectionTest.connectViaExchangeAutodiscover(Ex00_ConnectionTest.java:36)
	at ews_managed_api.Ex00_ConnectionTest.main(Ex00_ConnectionTest.java:45)

microsoft.exchange.webservices.data.ServiceRequestException: The request failed. The request failed. outlook.office365.com: unknown error
	at microsoft.exchange.webservices.data.SimpleServiceRequestBase.internalExecute(SimpleServiceRequestBase.java:58)
	at microsoft.exchange.webservices.data.MultiResponseServiceRequest.execute(MultiResponseServiceRequest.java:138)
	at microsoft.exchange.webservices.data.ExchangeService.bindToFolder(ExchangeService.java:317)
	at microsoft.exchange.webservices.data.ExchangeService.bindToFolder(ExchangeService.java:335)
	at microsoft.exchange.webservices.data.Folder.bind(Folder.java:46)
	at microsoft.exchange.webservices.data.Folder.bind(Folder.java:95)
	at ews_managed_api.Ex00_ConnectionTest.connectViaExchangeAutodiscover(Ex00_ConnectionTest.java:38)
	at ews_managed_api.Ex00_ConnectionTest.main(Ex00_ConnectionTest.java:45)
Caused by: microsoft.exchange.webservices.data.ServiceRequestException: The request failed. outlook.office365.com: unknown error
	at microsoft.exchange.webservices.data.ServiceRequestBase.getEwsHttpWebResponse(ServiceRequestBase.java:686)
	at microsoft.exchange.webservices.data.ServiceRequestBase.validateAndEmitRequest(ServiceRequestBase.java:625)
	at microsoft.exchange.webservices.data.SimpleServiceRequestBase.internalExecute(SimpleServiceRequestBase.java:46)
	... 7 more
Caused by: java.net.UnknownHostException: outlook.office365.com: unknown error
	at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
	at java.net.InetAddress$2.lookupAllHostAddr(InetAddress.java:907)
	at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1302)
	at java.net.InetAddress.getAllByName0(InetAddress.java:1255)
	at java.net.InetAddress.getAllByName(InetAddress.java:1171)
	at java.net.InetAddress.getAllByName(InetAddress.java:1105)
	at org.apache.http.impl.conn.SystemDefaultDnsResolver.resolve(SystemDefaultDnsResolver.java:44)
	at org.apache.http.impl.conn.HttpClientConnectionOperator.connect(HttpClientConnectionOperator.java:101)
	at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:318)
	at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:363)
	at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:219)
	at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:195)
	at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:86)
	at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:108)
	at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:106)
	at microsoft.exchange.webservices.data.HttpClientWebRequest.executeRequest(HttpClientWebRequest.java:368)
	at microsoft.exchange.webservices.data.ServiceRequestBase.getEwsHttpWebResponse(ServiceRequestBase.java:677)
	... 9 more

Here is my complete code that Im using for testing the connections.
package ews_managed_api;

import java.net.URI;

import microsoft.exchange.webservices.data.ExchangeCredentials;
import microsoft.exchange.webservices.data.ExchangeService;
import microsoft.exchange.webservices.data.Folder;
import microsoft.exchange.webservices.data.IAutodiscoverRedirectionUrl;
import microsoft.exchange.webservices.data.WebCredentials;
import microsoft.exchange.webservices.data.WellKnownFolderName;

public class Ex00_ConnectionTest {
  public static class RedirectionUrlCallback implements IAutodiscoverRedirectionUrl {
    public boolean autodiscoverRedirectionUrlValidationCallback(String redirectionUrl) {
      return redirectionUrl.toLowerCase().startsWith("https://");
    }
  }

  public static ExchangeService connectViaExchangeManually(String email, String password)
      throws Exception {
    ExchangeService service = new ExchangeService();
    ExchangeCredentials credentials = new WebCredentials(email, password);
    service.setUrl(new URI("https://pod51059.outlook.com/ews/exchange.asmx"));
    service.setCredentials(credentials);
    service.setTraceEnabled(true);
    Folder inbox = Folder.bind(service, WellKnownFolderName.Inbox);
    System.out.println("messages: " + inbox.getTotalCount());
    return service;
  }

  public static ExchangeService connectViaExchangeAutodiscover(String email, String password)
      throws Exception {
    ExchangeService service = new ExchangeService();
    service.setCredentials(new WebCredentials(email, password));
    service.autodiscoverUrl(email, new RedirectionUrlCallback());
    service.setTraceEnabled(true);
    Folder inbox = Folder.bind(service, WellKnownFolderName.Inbox);
    System.out.println("messages: " + inbox.getTotalCount());
    return service;
  }

  public static void main(String[] args) {
    try {
      ExchangeService service =<EMAIL_ADDRESS>"<password>");
      //ExchangeService service =<EMAIL_ADDRESS>"<password>");
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}

I am working on ubuntu 14.04.1

Okay I have just tested the code in another pc and everything is working. I guess the problem was only with my pc.

Hi,
I need to develop a feature to scan emails from outlook public folders.
So I tried with below code segment with ews-java-api but for Inbox it works with no issues.
When I try to access mail from public folders it generates exception saying "There are no public folder servers available."
Code :
I have maintain my credentials in property file
Exchange service URL we are using is https://hostname/EWS/Exchange.asmx
public static void main(String[] args) {
String serviceUrl = "";
try {
//Load Property
Properties prop	= new Properties();
prop.load(new FileInputStream("config.properties"));
int offSet = 0;
int pageSize = 100;
boolean more = true;
		//Get exchange service object
		ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP2);

		String mailId = prop.getProperty("mailId");
		String passWd = prop.getProperty("mailPwd");
		serviceUrl = prop.getProperty("serviceUrl");

	//System.out.println("mailId = "+mailId+"\t pwd = "+passWd+"\t serviceUrl = "+serviceUrl);

	//Set credentials
	ExchangeCredentials credentials = new WebCredentials(mailId, passWd);

	//Pass credentials to service
	service.setCredentials(credentials);

	//Set service Url
	service.setUrl(new URI(serviceUrl.trim()));

	FolderView view = new FolderView(5);

	FindFoldersResults res = service.findFolders(WellKnownFolderName.PublicFoldersRoot, view);

	for(Folder f : res.getFolders()){
			System.out.println("Name : "+f.getDisplayName());
	}

	}catch(Exception e){
		e.printStackTrace();
	}

ERROR :
microsoft.exchange.webservices.data.ServiceResponseException: There are no public folder servers available.
at microsoft.exchange.webservices.data.ServiceResponse.internalThrowIfNecessary(Unknown Source)
at microsoft.exchange.webservices.data.ServiceResponse.throwIfNecessary(Unknown Source)
at microsoft.exchange.webservices.data.MultiResponseServiceRequest.execute(Unknown Source)
at microsoft.exchange.webservices.data.ExchangeService.internalFindFolders(Unknown Source)
at microsoft.exchange.webservices.data.ExchangeService.findFolders(Unknown Source)
at microsoft.exchange.webservices.data.ExchangeService.findFolders(Unknown Source)
at com.wellmanage.fi.ReadFromPublic.main(ReadFromPublic.java:62)
What could be the reason for this?
Please help.
Thanks

Hi,
Does anybody know solution to this?

Try send emails first ?

@yatinc1206  login to your outlook with the same credentials you happen to use in code.
check there if any public folders are available. left click at the top left small arrow,sidebar will open.
you will find it there


Typo in "unable to connect" error message

Error: error on running goubster: unable to connect to
-> gobuster

You're going to have to give us a lot more detail if you're expecting any help.


Add support for background images and simple parallax scrolling

Is this a BUG REPORT or FEATURE REQUEST?:
feature
What you expected to happen:
It would be nice to support the following features:

To use image for background of a fragment. This would be a generic feature used for any kind of fragment; content, items, portfolio, graph, etc. Something similar to what we can in the hero fragment. The solution would be, e.g., to use asset.image for background and to specify it in a special property, e.g., asset.use_as_background.
If there is a background image set for a fragment, there should be a way how to set a simple parallax scrolling effect and the ratio how fast/slow the background image is moving - from static to some percentage of scrolling the page. E.g. asset.parallax = 0 for background image not moving by vertical scrolling, asset.parallax = 50 for background image moving by 50% of scrolling,  or asset.parallax = 100 (default) for background image moving with the same speed as scrolled page. Also values more than 100 could be allowed.

Example of a simple parallax scrolling effect: https://codepen.io/tribex/pen/mWNWdz

Sidenote: Codepen does not work with Firefox it seems.


copr: Add non-vectorized json-length

Signed-off-by: Wangweizhen<EMAIL_ADDRESS>PCP #5751
What have you changed?
Add non-vectorized json-length
What is the type of the changes?

New feature

How is the PR tested?
Unit tested. Will run copr test later.
Does this PR affect documentation (docs) or should it be mentioned in the release notes?
No. It should not change the behavior.
Does this PR affect tidb-ansible?
No.

/run-integration-copr-test

@sre-bot /run-integration-copr-test copr-test

@sre-bot /run-integration-copr-test copr-test

@sticnarf PTAL

@hawkingrei Could you address the comment about the case which is there is only 1 argument?

@breeswish @sticnarf  Completed to test.  PLAT

@breeswish  Fixed conflict.

Thanks! Could you take a look about this review comment? https://github.com/tikv/tikv/pull/5916/commits/eaee2cb0fe41b3c904106cde8f114f9df9fcad17#r347750940

I add a test that all the parameter is None. so I have fixed the issue from sticnarf’s review. But I cannot see any code review from the page of eaee2cb#r347750940.

Hi, @hawkingrei   I think @sticnarf was saying that test cases are missing for insufficient number of arguments (instead of arguments in None).

@sre-bot /run-integration-copr-test copr-test=pr/105

@sre-bot /run-integration-copr-test copr-test=pr/105

@sre-bot /run-integration-copr-test copr-test=pr/105

JSON_LENGTH have two arguments. the second argument is optional. so the first argument is Some(json_text) or None. the second argument is Some(json_path) or None,too.So an insufficient number of arguments is possible.

@sre-bot /run-integration-copr-test copr-test=pr/105

@sre-bot /run-integration-copr-test copr-test=pr/105

@sre-bot /run-integration-copr-test copr-test=pr/105

/run-test-all

/run-all-tests

@breeswish  Why doesn't the sre-bot prompt that the task is completed and get score?

@hawkingrei Both this PR and #5917 are opened when you are a single player in PCP game. I've updated the database to include this 2 PRs and the score into your new team. Check it out at https://pingcap.com/community-cn/tidb-performance-challenge/


Missing indent lines on wrapped graphical lines

On graphical lines that contain text from a wrapped logical line, the indent guides are not displayed (screenshot below). I have wrapping enabled for all filetypes and breakindent and linebreak enabled (see the relevant settings in my init.lua below). This is most noticeable in filetypes with lots of text on a line, e.g. LaTeX files. I looked through the documentation and didn't see anything I could do about this. Is there a way that the indent lines can be continued on the graphical lines that exist to display wrapped text?
-- In init.lua
-- For setting options
scopes = {o = vim.o,    -- o for setting global options
          b = vim.bo,   -- bo for setting buffer-scoped options
          w = vim.wo    -- wo for setting window-scoped options
}
function opt(scope, key, value)
    scopes[scope][key] = value
    if scope ~= 'o'
    then scopes['o'][key] = value
    end
end

opt('w', 'breakindent', true)       -- when wrapping, maintain indentation
opt('w', 'linebreak', true)         -- wrap at word boundaries, not mid-word

Thanks for your great plugin!

This is currently not possible. It's a limitation in Neovim.
There is no way to put virtual text in this area (or anything else for that matter).
I will implement this should it ever become possible, but I will close this ticket for now.

I am interested in this too.

Just a gentle ping to know if this limitation in upstream neovim has been addressed in any recent releases since this issue was closed?

Can you perhaps please link to the upstream bug/issue report on the Neovim GitHub repo, which is being worked on?

This is currently not possible. It's a limitation in Neovim.
There is no way to put virtual text in this area (or anything else for that matter).

It is desirable with long wrapped prose to maintain indent lines. The OP's example was perfect. Each item within a LaTeX description list soft-wrapped  over multiple lines. When we have more than a few such list items, the sporadic presence of indent guides makes it confusing.
May I request your help to draft a feature request with upstream neovim to somehow fix this in a future release of neovim?

I am also interested in this upstream nvim feature request for the same reasons. What exactly would need to change in nvim?

What exactly would need to change in nvim

Sorry, I don't know too much about how nvim implements line wrapping. But this would not be a small change.
You'd need to talk to someone on the core team.


[Issue]: Too many Assets in a single Container

https://github.com/hai-vr/av3-animator-as-code/blob/main/Framework/Editor/V0/Aac.cs#L33
https://github.com/hai-vr/av3-animator-as-code/blob/main/Framework/Editor/V0/Aac.cs#L42
https://github.com/hai-vr/av3-animator-as-code/blob/main/Framework/Editor/V0/Aac.cs#L238
There appears to be only a certain amount of assets that can be packed into 1 another.
Somewhere around the neighborhood of 20+ assets.
When there is too many assets in a container the engine starts culling them out by destroying them thereby breaking the setup.
A workaround to this is manually creating the assets in a folder on their own rather than containerizing them.
When I started doing this for AnimationClip creation everything worked properly once again.
An idea for a solution would be doing a size comparison and splitting the 1 container into multiple containers.

The resolution of this issue on Discord was that the asset container passed to AAC was a newly created asset container (in this case, cloned from an existing one) that had not yet been persisted to disk.
To fix this issue, the asset container must be persisted to disk first, before passing it to AAC. This is known to work with ForceReserializeAssets, and, although not verified, might (?) work with SetDirty.


Increased timeout for local_datastore test

https://github.com/lf-edge/eve/runs/3822932851?check_suite_focus=true
Timeout in 15 min is not enough to deploy the app.
Signed-off-by: Ruslan Dautov<EMAIL_ADDRESS>

This needs to be first fixed in Eden and then copied/vendored into EVE.
I have no issue with the fixes themselves.

https://github.com/lf-edge/eden/pull/691 merged to eden as well


Tidy kitchen

Because everyone likes a tidy kitchen.

[x] Uses dokken
[x] Uses Inpec for verifier
[x] Current tests pass

Changes made @shortdudey123

It still tried to converge the resource.
It's an ugly hack, that I don't really like. But it does mean that part
converges.
Feel free to try it out!
On Sat, 17 Dec 2016, 16:53 Xabier de Zuazo<EMAIL_ADDRESS>wrote:

@zuazo commented on this pull request.
In recipes/install.rb
https://github.com/sous-chefs/mongodb/pull/120#pullrequestreview-13449288
:

@@ -70,11 +72,12 @@
end

Create keyFile if specified
-file node['mongodb']['config']['keyFile'] do

owner node['mongodb']['user']
group node['mongodb']['group']
mode  '0600'
backup false
content node['mongodb']['key_file_content']
only_if { node['mongodb']['key_file_content'] }
+if node['mongodb']['key_file_content']

file node['mongodb']['config']['keyFile'] do
owner node['mongodb']['user']
group node['mongodb']['group']
mode  '0600'
backup false
content node['mongodb']['key_file_content']
end

I suppose there will be a good reason. So I just ask from my ignorance:
why have you replaced the only_if here with an external if?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/sous-chefs/mongodb/pull/120#pullrequestreview-13449288,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AACfUrQCpF4qXSYE-v2gPjMQ4qNVrUf_ks5rJBNtgaJpZM4LJQDu
.

--
Dan Webb
[image: https://]about.me/dan_webb
https://about.me/dan_webb?promo=email_sig&utm_source=email_sig&utm_medium=email_sig&utm_campaign=external_links

Awesome! thanks for getting this updated