Bloater code smell

Hi there,
there is a SdlProxyALM class in the SDK. 1500 lines of almost 2000 lines. There are 38 contractors and a good half of them is deprecated. Meanwhile there is a SDLProxyBuilder class that basically does the same thing but in a nicer manner.
I would like to suggest to deprecate the entire class and use a builder only as it's almost impossible to keep track on what happens with contractors in SdlProxyALM. Or create a base constructor that uses required parameters meanwhile all other could be set by builder.

Thanks for your interest in the project. I am closing this issue as it is not a specific issue with the library but rather a comment about it. While I agree with the comment and need for change, it is not specifically an addressable issue. If you would like to see changes please submit an evolution proposal here and the change can get processed through.


Backport: Failed to generate kube-etcd certificate: x509: cannot parse IP address of length 0

Backport https://github.com/rancher/rancher/issues/16934

Fixed in v2.1.4-rc1

Steps to reproduce the issue:
Create K8s cluster.
kubectl edit secret -n kube-system  and make secret empty
Edit cluster and add a new node or enable/disable snapshots.

rancher/rancher:v2.1.4-rc1

Reproduced original issue in v2.1.3:

2018/12/11 16:41:28 [INFO] cluster [c-qf2nq] provisioning: [certificates] Regenerating new etcd-<IP_ADDRESS> certificate and key
2018/12/11 16:41:29 [ERROR] ClusterController c-qf2nq [cluster-provisioner-controller] failed with : Failed to generate kube-etcd certificate: x509: cannot parse IP address of length 0

Installed Rancher v2.1.4-rc1
Created cluster
Edited kube-etcd cert secret to remove data
Updated cluster (turned off etcd snapshots)
Cluster regenerated certs and updated successfully

2018/12/11 16:54:39 [INFO] cluster [c-xdvdb] provisioning: [certificates] Regenerating new etcd-<IP_ADDRESS> certificate and key
2018/12/11 16:54:39 [INFO] cluster [c-xdvdb] provisioning: [certificates] Successfully generated new etcd-<IP_ADDRESS> certificate and key


Build distribution after all other modules are installed on Travis

Some jobs have been flaky recently on Travis. One of them is the license check test. I don't have a link of failed tests at handy, but the log was something like below:
08:28:20.303 [main] ERROR org.apache.druid.cli.PullDependencies - Unable to resolve artifacts for [org.apache.druid.extensions:druid-ranger-security:jar:0.22.0-SNAPSHOT (runtime) -> [] < [ (https://repo1.maven.org/maven2/, releases+snapshots)]].
org.eclipse.aether.resolution.DependencyResolutionException: Could not find artifact org.apache.druid.extensions:druid-ranger-security:jar:0.22.0-SNAPSHOT in  (https://repo1.maven.org/maven2/)
	at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDependencies(DefaultRepositorySystem.java:384) ~[aether-impl-0.9.0.M2.jar:?]
	at io.tesla.aether.internal.DefaultTeslaAether.resolveArtifacts(DefaultTeslaAether.java:289) ~[tesla-aether-0.0.5.jar:0.0.5]
	at org.apache.druid.cli.PullDependencies.downloadExtension(PullDependencies.java:404) [druid-services-0.22.0-SNAPSHOT.jar:0.22.0-SNAPSHOT]
	at org.apache.druid.cli.PullDependencies.downloadExtension(PullDependencies.java:362) [druid-services-0.22.0-SNAPSHOT.jar:0.22.0-SNAPSHOT]
	at org.apache.druid.cli.PullDependencies.run(PullDependencies.java:308) [druid-services-0.22.0-SNAPSHOT.jar:0.22.0-SNAPSHOT]
	at org.apache.druid.cli.Main.main(Main.java:113) [druid-services-0.22.0-SNAPSHOT.jar:0.22.0-SNAPSHOT]

I'm unsure why the license check was pulling extension dependencies. However, the issue seems like a race as the maven build uses 2 threads to build modules. The druid-ranger-security module is the second last one that maven builds, and thus it might not be installed yet when maven builds the last module, distribution. This PR changes to the install command to build all other modules first before building the distribution.

I ran the license check job 3 times on Travis and all passed.


Improve yanked gem error message

The problem was that the error message for a yanked Gem told the user to:

update your bundle to a different version of foo (1.0)

This is slightly misleading because in this example, foo 1.0 is the version that has been yanked. They should use any verion of foo other than 1.0.
My diagnosis was that the error message interpolated the gem specification (which converts to a string as "NAME (VERSION)") rather than just the name of the gem in this instance.
My fix was to change that occurrence of the gem specification to just the gem name.
I chose this fix because it was the only way that occurred to me to do it.

I'ms surprised this change doesnt break any tests...

@bundlerbot r+


[AutoComplete] Can't convert object to string error when option has object as value

When providing options to the autocomplete, where values are objects, it throws the Can't convert object to string error.
The error occurrs in the useAutocomplete file in the defaultStringify function.
The function should maybe use recursion to convert all existing objects.

Tech
Version

Material-UI
v4.9.5

@BjoernRave Thanks for the report, it should have been solved with #19974. We will soon release it :)


Feature request: Quick toggle bandwidth limits

Would it be possible to add a tray menu item to quickly toggle bandwidth limiting? I often want to limit the bandwidth used by Syncthing so that other apps (and devices) can use it, but it would be nice to be able to quickly toggle it on/off instead of having to go into the web interface. (I realise that it means a restart.)

I'd love to see something like that as well, over the past few years all kinds of torrent clients started to do this (qbittorrent, transmission, etc.) and it is indeed very useful to free resources "in a quick single click".
However, if restart is needed for it to apply, it'll be much less useful (at least for me :wink: ) .
ST's restart is a heavy task (once you have many folders...), that i'd rather avoid. And if the toggle would depend on it, i'd just shutdown ST for the time i need the resources instead...
But that's more of a rant on (awesome nonetheless) syncthing, and it's subsystems. It may be improved one day.
As far as having this toggle in SyncTrayzor - i don't see why not :)

As far as having this toggle in SyncTrayzor - i don't see why not :)

Yeah, you're not the one working on it in all of your lunch breaks for a week 😉

Oh I know that 😉
As so do you, that all those are "ideas suggestions" that you are free to dismiss (and we are free to submit a pr during our lunch breaks)
Anyways, the intention was just to express my opinion, sorry if it came up arrogant...

To elaborate, this a bit harder than it looks:

I need to be able to modify the config and post it back. I don't do this currently, as being able to consume and modify a configuration format while still allowing it to change in the future (and remaining compatible with those unknown future changes) is hard.
New settings inputs to specify the bandwidth limits you want to apply.
Noticing when the user edits the bandwidth limits from within Syncthing, and doing something sensible. If they apply limits within Syncthing, presumably we display "bandwidth limits on"? If bandwidth limits are on and the user changes them from within Syncthing, presumably we update our local record of what the bandwidth limits should be?
To avoid cluttering the context menu on the tray icon, presumably the option to enable/disable the bandwidth limit should only be displayed if bandwidth limits have been configured.
Should the tray icon show something? Otherwise it might not be obvious why things are going so slow.

Hmm, I hadn't thought about all that. Maybe it would be worth asking the
Syncthing developers, it might be easier to implement at that level.
On 26 Dec 2016 8:55 p.m., "Antony Male"<EMAIL_ADDRESS>wrote:

To elaborate, this a bit harder than it looks:

I need to be able to modify the config and post it back. I don't do
this currently, as being able to consume and modify a configuration format
while still allowing it to change in the future (and remaining compatible
with those unknown future changes) is hard.
New settings inputs to specify the bandwidth limits you want to
apply.
Noticing when the user edits the bandwidth limits from within
Syncthing, and doing something sensible. If they apply limits within
Syncthing, presumably we display "bandwidth limits on"? If bandwidth limits
are on and the user changes them from within Syncthing, presumably we
update our local record of what the bandwidth limits should be?
To avoid cluttering the context menu on the tray icon, presumably
the option to enable/disable the bandwidth limit should only be displayed
if bandwidth limits have been configured.
Should the tray icon show something? Otherwise it might not be
obvious why things are going so slow.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/canton7/SyncTrayzor/issues/328#issuecomment-269241288,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEzixmGan6w6_gttp_O7RpDROB7JURcbks5rMCnVgaJpZM4LVNqL
.


Create user:appear two same records

In GitLab by @wknet123 on Jul 26, 2018, 10:20

In GitLab by @liyanq528 on Nov 8, 2019, 07:57
fixed by pull request #1708

In GitLab by @luotian-github on Nov 8, 2019, 07:57
verified, not found this problem again

In GitLab by @luotian-github on Nov 8, 2019, 07:57
No problem.

In GitLab by @sokril on Nov 8, 2019, 08:26
closed

In GitLab by @sokril on Nov 8, 2019, 08:26
assigned to @luotian-github


Add Flowables::repeat(T)

Should be useful in testing out the movability/copyability of our T values.
So far all our operators and Flowables helpers only require T to be movable,
repeat() will be the first use case that requires T to be copyable.

Oh rats I was just working on this: https://github.com/nickgg/rsocket-cpp/tree/cycle-flowable - can we compare the two?
Differences:

I called it cycle rather than repeat (thats what haskell & python call it), but no strong feelings.
I added the initialiser list version as well.
Tests for my version are a bit more comprehensive (i found the bug from #385, for instance)

Hah, great minds think alike.

I called it repeat() because I believe that's what the other rx/reactive libraries call it.
The initializer list overload is interesting.  I still find it a bit odd to have repeat(ONE_VALUE) and repeat(INITIALIZER_LIST) have the same name, as they don't really do the same thing.  I'd actually say that the initializer_list overload would be better named as repeatCycle() (assuming the normal one was called repeat()).
Yeah I wasn't looking to test it thoroughly, mostly to add an example that compiled.

definitely looks like repeat is preferred in the reactive world: http://reactivex.io/documentation/operators/repeat.html
I guess it depends on the way you look at it, I was thinking of them both as overloads of repeat(SOURCE). If you take a look at rxjava it does this by making the input be a publisher an then resubscribing to it on complete: https://github.com/reactor/reactive-streams-commons/blob/master/src/main/java/rsc/publisher/PublisherRepeat.java.

Changing name for each input type can blow out if you have a bunch of input sources, e.g. now we have just, justN and fromPublisher (which is basically the just(PUBLISHER) overload) - for repeat we need to add repeat, repeatN, repeatFromPublisher? For every new kind of flowable we add 3 more api names, and for every new type of source we add X (for each applicable flowable kind).
I don't think the user cares about the distinction here, and we can save them from some effort. I envisage wanting to write stuff like just(SOMETHING)->map(FUNC)->take(X) and the what those things represent is important to me, not how they're implmented.
I don't feel that strongly about this though, does anyone else have an opinion?

If not now, then when? :)

I was thinking of them both as overloads of repeat(SOURCE)...

Yeah this isn't how I read it.  To me, repeat(T) means a Flowable that always sends the given T value.  repeat(initializer_list) on the other hand is a Flowable that sends a value from a list, cycling through the list infinitely.  In my mind these behaviors are different enough that they don't deserve the same name.  To be honest I would name the latter as cycle(initializer_list).

e.g. now we have just, justN and fromPublisher (which is basically the just(PUBLISHER) overload)

I don't agree with the last part of that.  When I see just(T) I think of a Flowable that sends a single T value and then completes.  fromPublisher can do whatever it wants with the subscriber, there's no more notion of that "single value and then complete".

Changing name for each input type can blow out if you have a bunch of input sources...

But this only applies to "creation" operators as listed on http://reactivex.io/documentation/operators.html#creating, of which there aren't that many.  Everything else (e.g. map, filter, take, first, etc.) just takes a single input at a time.

If not now, then when? :)

:)  Yeah I should have added more.

Repeat is an operator I can apply to any Flowable. For example: just(T).repeat() or fromIterable(iter).repeat().
Regardless of the source I can cause it to repeat indefinitely until cancelled.

Regardless of the source I can cause it to repeat indefinitely until cancelled.

Does that mean that the repeat() operator just re-subscribes to whatever flowable it was applied to?  Or does it buffer all onNext() signals it gets until onComplete(), after which it cycles through its buffer?
From your description it seems like you mean the former, but I really think it should be the latter.  If I have F = Flowables::just(V), then I want F to move V to its subscriber via Subscriber::onNext(std::move(V)).  If I then compose a re-subscribing operator on that, I won't get V anymore, I'll get an empty object as F no longer owns V.

It just resubscribes. Buffering by default is a bad thing with very large streams. The standard approach to that in these libraries is compose replay().repeat().
The replay() operator with no arguments caches everything it receives and replays it each time it is subscribed to.

Ah okay, so the resubscribing logic and the buffer logic are two different operators, that makes more sense.
With the way I see things, that means Flowables::just<T>(T(5)).repeat() will stream T(5), T(), T(), ..., because just will relinquish ownership of the object after the first onNext, and then afterwards can only send a default object.
Flowables::just<T>(T(5)).replay().repeat() will stream T(5), T(5), T(5), ..., and the replay operator will statically assert that T is a copyable object.

That's a problem if it relinquishes the object because as long as someone has a reference to the Flowable anyone can subscribe to it and it needs to work correctly.

In other words, just(T) needs to copy T, or a reference to T and be able to emit it multiple times. Otherwise that Flowable doesn't really work correctly.

I'm now onboard with @benjchristensen's explanation of how just() should keep a copy of the value and that repeat() should just re-subscribe.  That said, not enough time to work on this right now.


"What is Cooperation Hull?" Content Page

Current website for reference: https://www.cooperationhull.co.uk/what-is-cooperation-hull/
Use that copy and those images.
Just make something simple for now using the content page template on figma

Realised we don't need this, as the copy is on our new home page


Don't use Enzyme in ErrorTracking tests

In this PR, we get rid of Enzyme in ErrorTracking tests since this plugin does not render anything.
We did the same in UsageStatistics plugin.


chore: update circleci to ubuntu-2204:2024.08.1 (latest) machine image

Issue

PR https://github.com/cypress-io/cypress-docker-images/pull/1163 updated the circle.yml workflow to use machine image ubuntu-2204:2024.05.1 from Circle CI Machine Images > ubuntu-2204.

The Docker Engine version 26.0.2 was released 5 months ago in April 2024. The latest CircleCI Ubuntu machine image ubuntu-2204:2024.08.1 offers Docker Engine 26.1.4 (released in June 2024) according to the CircleCI posting Ubuntu 20.04, 22.04, 24.04 - Q3 Edge Release.

Change
Update the circle.yml workflow from ubuntu-2204:2024.05.1 to the latest version ubuntu-2204:2024.08.1.
Moving to ubuntu-2204:2024.08.1 updates the components as follows:

Image tag
Node.js
Docker Engine
buildx
Status

ubuntu-2204:2024.05.1
20.12.2
26.0.2
v0.14.0
current

ubuntu-2204:2024.08.1
20.16.0
26.1.4
v0.16.1
future

This is a minor version update for Node.js 20.x, a minor version update for Docker Engine 26.x and a major functional update from Docker Buildx v0.14.x to v0.16.1. Based on a review of the release notes, there is no impact expected for the Cypress Docker image build process. Failing checks caused by upgrading to buildx v0.15.0 (which was also included in Docker Desktop 4.33.0) have already been mitigated (see explanation in https://github.com/cypress-io/cypress-docker-images/issues/1186#issuecomment-2275303465).

Version tests now cause warnings, for example:
WARN[0000] Found orphan containers ([test-project-test-factory-all-included-run-26207f099303]) for this project. If you removed or renamed this service in your compose file, you can run this command with the --remove-orphans flag to clean it up.
Version 1.22.22 confirmed

Although this is only cosmetic, it should be cleaned up.


tag resource

Hey,
Certain elements for resourceTag isn't matching the Cisco DNA Center Platform API.
Fields that should be Optional and not Required

description
system_tag
instance_tenant_id

Terraform Version
terraform -v
Terraform v0.14.9

Affected Resource(s)
Please list the resources as a list, for example:

resource_dna_tag.go

Terraform Configuration Files
resource "dna_tag" "tf_tag" {
  provider = dnacenter
  item {
    system_tag = false
    description = "Terraform Tag"
    name = "Terraform"
  }
}

Debug Output
Error: Missing required argument

  on main.tf line 60, in resource "dna_tag" "data":
  60:   item {

The argument "instance_tenant_id" is required, but no definition was found.

Steps to Reproduce

terraform plan

Workaround
Set a dummy value for instance_tenant_id
resource "dna_tag" "tf_tag" {
  provider = dnacenter
  item {
    system_tag = false
    description = "Terraform Tag"
    name = "Terraform"
    instance_tenant_id = ""
  }
}

References
https://developer.cisco.com/docs/dna-center/#!create-tag

The latest version, 0.0.4, addressed this issue.

Feel free to reopen if the problem still exists. Thank you.


Add Char::Reader documentation

@Zavydiel excellent additions to the documentation!
Left you some notes about missing blank lines between examples and description and also the usage of tool format to ensure the code samples included match the formatting.
Cheers!

@asterite noticed that the sample codes in the Documenting code section of the site are not up-to-date in relation to the formatter. Will send a pull request with updates for that! :smile:

@luislavena Great, thank you!

Fixed the formatting and documented current_char_width

Thanks!


An option to make the server handle only one request? I.e. shutdown after giving the response.

I want it for my Google Cloud Run thing to be sure it'll not reuse the instance.

@Nakilon shell2http already have -add-exit option, which add /exit route to the server. And you can call your main route and then http://servername/exit

Currently I solved it by putting rm script.sh as the first line of rm script.sh.


Create Desktop version Of the portfolio website

In this branch, the following was done:

Add a header section
Add work section
Add contact section
Add footer section

Hi @FilbertKimasa  ,
Your project is perfect!  There is nothing else to say other than...  Congratulations! 🎉


Improve parameter parsing [02]

What current issue(s) does this address, or what feature is it adding?
NOTE: This PR is a continuation of #972
When manually testing contract invocation and build_run, I noticed that parameters entered via the command line were not parsed identically to those entered with the --i flag. This is because the --i flag used the gather_params helper function and the regular command line parsing did not.
How did you solve this problem?
I split out the parameter verification into a separate function: verify_params and added a user_entry flag to limit verification to user entered params.

verifies parameters input via command line and --i flag
ensures parameter input is identical
does not disrupt existing logic which had previously caused many errors in #972

How did you make sure your solution works?
manual testing
Are there any special changes in the code that we should be aware of?
Yes, new parameter parsing affected some gas costs and one return value from previous tests. See https://github.com/CityOfZion/neo-python/pull/973/commits/efb6ef47887237822d8ad1c844b3a794255bcece
I think these are good changes seeing as they mirror the results if the --i flag was used.
Please check the following, if applicable:

[x] Did you add any tests?
[x] Did you run make lint?
[ ] Did you run make test?
[x] Are you making a PR to a feature branch or development rather than master?
[x] Did you add an entry to CHANGELOG.rst? (if not, please do)

Coverage increased (+0.01%) to 85.93% when pulling efb6ef47887237822d8ad1c844b3a794255bcece on jseagrave21:verify-params into acddacb13b04035b91def819d3fda9319283fcd9 on CityOfZion:development.

@ixje please note make test passes locally. You can see the failure is being caused by the snapshot argument which seems to be from #974.

note to self; check ceil and gas change impact

@ixje
BLUF: I think I have addressed all your comments. Please let me know if I am missing something.
Background: In your first comment, since the string 'bla' is not a bytearray or a bytes object, eval returns a NameError. I have included this case in testing and exceptions during eval or any other returns other than bytearray or bytes output will result in an Exception to provide a bytearray or bytes object.
I address both your second and third comments by incorporating exception handling into the use-entry process.
I was a little unsure of what you meant with Exception('Please provide a list'). This exception is now incorporated in the the exception handling which provides good feedback to the user.
Please let me know if I am missing something and thank you for your thorough review.

I think you're trying to resolve it in a too narrow context. Normally, it's good to not catch exceptions too 'broad', to make sure you don't have hidden issues. In this case I pointed at the difference of  PrompUtils.gather_params() vs your verify_params for that specific reason.
The second issue I pointed out is not resolved
neo> sc build_run test-sc.py False False False fe10 02 bla []
Saved output to test-sc.avm
Could not execute command: local variable 'ptype' referenced before assignment
  File "/Users/erik/Documents/code/test-issues/seagrave/venv/bin/np-prompt", line 11, in <module>
    load_entry_point('neo-python', 'console_scripts', 'np-prompt')()
  File "/Users/erik/Documents/code/test-issues/seagrave/neo/bin/prompt.py", line 382, in main
    loop.run_forever()
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/asyncio/base_events.py", line 523, in run_forever
    self._run_once()
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/asyncio/base_events.py", line 1758, in _run_once
    handle._run()
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/asyncio/events.py", line 88, in _run
    self._context.run(self._callback, *self._args)
  File "/Users/erik/Documents/code/test-issues/seagrave/neo/bin/prompt.py", line 234, in run
    traceback.print_stack()
Traceback (most recent call last):
  File "/Users/erik/Documents/code/test-issues/seagrave/neo/Prompt/Commands/Invoke.py", line 477, in test_deploy_and_invoke
    ptype = ContractParameterType(iarg)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/enum.py", line 307, in __call__
    return cls.__new__(cls, value)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/enum.py", line 555, in __new__
    return cls._missing_(value)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/enum.py", line 568, in _missing_
    raise ValueError("%r is not a valid %s" % (value, cls.__name__))
ValueError: 254 is not a valid ContractParameterType

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/erik/Documents/code/test-issues/seagrave/neo/bin/prompt.py", line 220, in run
    cmd.execute(arguments)
  File "/Users/erik/Documents/code/test-issues/seagrave/neo/Prompt/Commands/SC.py", line 44, in execute
    return self.execute_sub_command(item, arguments[1:])
  File "/Users/erik/Documents/code/test-issues/seagrave/neo/Prompt/CommandBase.py", line 75, in execute_sub_command
    return self.__sub_commands[id].execute(arguments)
  File "/Users/erik/Documents/code/test-issues/seagrave/neo/Prompt/Commands/SC.py", line 80, in execute
    tx, result, total_ops, engine = BuildAndRun(arguments, PromptData.Wallet)
  File "/Users/erik/Documents/code/test-issues/seagrave/neo/Prompt/Commands/BuildNRun.py", line 72, in BuildAndRun
    debug_map=debug_map, invoke_attrs=invoke_attrs, owners=owners, enable_debugger=enable_debugger)
  File "/Users/erik/Documents/code/test-issues/seagrave/neo/Prompt/Commands/BuildNRun.py", line 96, in DoRun
    enable_debugger=enable_debugger, user_entry=True)
  File "/Users/erik/Documents/code/test-issues/seagrave/neo/Prompt/Commands/Invoke.py", line 488, in test_deploy_and_invoke
    print("Could not parse param as %s : %s " % (ptype, e))
UnboundLocalError: local variable 'ptype' referenced before assignment

I also think we can improve the error message:
neo> sc build_run test-sc.py False False False 0710 02 bla hoi
Saved output to test-sc.avm
[I 190916 12:19:15 LevelDBImpl:45] Created DB at /Users/erik/.neopython/Chains/debugstorage
Could not parse param as Array : Please provide a list

which param is wrong?


sass npm linked packages compilation times too slow

Hi, I came across an issue, when I @import *.scss files from liked node packages. https://docs.npmjs.com/cli/link.html
I use a global main.scss file, that includes Bulma packages by cascading imports. That means I load
main.scss
> _all.scss
>> components/_all.scss
>>> navbar.scss
>>>> ~bulma_scss/scss/components/navbar.scss

I import all Bulma's scss files like this and there are some mine packages too so it's about 200+ files. Compilation time in dev mode is about 10s, it's slow, but still, I can live with that. The issue is when I import any scss file from my package, that is in node_modules linked by npm's link https://docs.npmjs.com/cli/link.html then compilation time is more than 60s and that's too much.
Is there any way to solve this issue or any idea? I don't have this issue in my other non-nuxt project's that compiles these files with webpack's sass-loader. Thank you.

See #35, #42 #39. Please ping if that didn't help.

@manniL I made several tests, and I came to the conclusion that when @imports are in template files, then my approach is not slow and this issue is not present. So this issue is fixed by moving @imports into template files.
I knew that I should load by '@nuxtjs/style-resources' just variables and mixins, but I want to have global styles that are included anywhere. Now I have this in my layouts/default.vue

This is not an elegant solution IMHO, is there any recommended approach to load global styles into the nuxt app? Thank you

If you want global styles, please use css in your nuxt.config.js.
As stated in the linked issues, all the files linked in the style-resources config are injected into every component and increasing the CSS drastically if you don't just add variables and co.

Thank you, I moved that imports into css: [] array. I made a several tests and result is that there is no significant speed difference.
I added this to config too
  build: {
    parallel: true, // don't know, if it works, maybe
    cache: true, // don't know, if it works, maybe
    hardSource: true, // don't know, if it works, maybe
}

Now when scss is cached, compilation time is < 1s, which is great.  When i change variable in styleResources, then compilation time is about 3s and thats sufficient.
About my original issue with linked npm package - there is no change. There is still performance issue that cause compilation time > 20s when even one npm package is symlinked in node_modules. My solution will be just not to do that. I will sync every my change into packages manualy. I already spend a lot of time on this, so if there is no simple solution, then leave it.

And i would suggest to update README.md about correct way to use this nuxt module. I should be explained explicitly how to use global variables and global styles. I will do a PR.


[epub_view] search content

epub_view| how can i search the contents? with search bar. is it possible?

Can you give information on this subject?

Can you give information on this subject?

search words inside of the pdf (OCR)


A page marked not to hydrate shouldn't need to prefetch __data.js

Describe the bug
Signal that a page should not hydrate export let csr = false and then hover on the link, __data.js is called. Yet the page doesn't have any JS so the call seems superfluous and unnecessary.
Reproduction
https://stackblitz.com/edit/sveltejs-kit-template-default-p7qmhh?file=src%2Froutes%2Ftodos%2F%2Bpage.js&terminal=dev

Click HOME
Click TODO

Notice "fail" message. Notice +page.js exports csr = false and so this page should have no JS. Data from server should load.

Reload TODO

page using "Refresh", fail does not appear because data does work. Only __data.js fails and it shouldn't matter if there is no hydration / JS.
Logs
No response
System Info
MacOS 12.5, Chrome 104, SvelteKit 1.0.0-next.465

Severity
annoyance
Additional Information
No response

This is expected behaviour — csr means that the page doesn't hydrate if you visit it directly. It doesn't mean that you can't navigate to it using the client-side router, which involves loading __data.
If you want a full page reload when visiting a route, that's not currently possible without marking all inbound links with data-sveltekit-reload, but there's a separate issue for that: https://github.com/sveltejs/kit/issues/5699


Bad indentation when it comes to React coding with neovim and lua config

Description
I've noticed that auto indent doesn't work when i use () and then hit <CR> indent stays in once place and aligned with the bracket. I sometimes have to hit <TAB> just to have proper indentation.
i'm using macos: high sierra
neovim verions: 8.4
https://github.com/windwp/nvim-autopairs/assets/61317733/594e256a-c610-4c14-8820-2640861ca7bc
Mapping  bug
1.If you report a bug about indent. Please remember that plugin doesn't do anything about indent.
It just trigger the indent of your vim config so if you have wrong indent config then it will do wrong indent.
You can check by select a block of code and press ==
2. provide result of command :verbose imap <cr>.
Steps to reproduce
No response
Minimal config
vim.cmd [[set runtimepath=$VIMRUNTIME]]
vim.cmd [[set packpath=/tmp/nvim/site]]
local package_root = '/tmp/nvim/site/pack'
local install_path = package_root .. '/packer/start/packer.nvim'
local function load_plugins()
  require('packer').startup {
    {
      'wbthomason/packer.nvim',
      {
        'windwp/nvim-autopairs',
      },
      -- ADD PLUGINS THAT ARE _NECESSARY_ FOR REPRODUCING THE ISSUE
    },
    config = {
      package_root = package_root,
      compile_path = install_path .. '/plugin/packer_compiled.lua',
      display = { non_interactive = true },
    },
  }
end
_G.load_config = function()
  require('nvim-autopairs').setup()
end
if vim.fn.isdirectory(install_path) == 0 then
  print("Installing nvim-autopairs and dependencies.")
  vim.fn.system { 'git', 'clone', '--depth=1', 'https://github.com/wbthomason/packer.nvim', install_path }
end
load_plugins()
require('packer').sync()
vim.cmd [[autocmd User PackerComplete ++once echo "Ready!" | lua load_config()]]

from an issue  template
1.If you report a bug about indent. Please remember that plugin doesn't do anything about indent.
It just trigger the indent of your vim config so if you have wrong indent config then it will do wrong indent.
You can check by select a block of code and press ==
2. provide result of command :verbose imap <cr>.

that issue come from treesitter indent. if you press o when cursor on  |return text it will have wrong indent too
return (
)

i do have treesitter installed, what can i do to fix the issue?

asking on  nvim-treesitter repo?
my plugin is only automatic  press O after you press  so nothing i can do here.


Fix incorrect error 400 to 404

All tests are passing and behaviour as expected in Postman.

Closed in error


Update insert.js

Altered the function edit_link_save, Links containing encoded content like % => %25 will be further encoded to %2525 which breaks the link. As the add_link() did not contain a encoding for the url it seems save to remove it in the edit_link_save as well.

X-Ref: #1303

(no, I didn't completely ignored that PR :)
I'm not sure this works any better, or maybe I didn't get what it's supposed to improve.
Example:
https://www.google.com/search?q=url+with+%2525 -> things are not improved between master and your PR
Am I getting something wrong?

Closing because no feedback.


WebSocket connection retry handling is severely broken in Firefox

Setup:
OS: Mac Monterey v12.4
Firefox: 106.0.5 (64-bit)
NATS Server: v2.9.6
nats.ws: v1.10.0,
# server.conf

websocket {
    port: 9222,
    no_tls: true
}

// Web app

conn = await connect({
	servers: config.URL,
	maxReconnectAttempts: -1, // Retry forever
	waitOnFirstConnect: true
});

Steps to reproduce:

Start NATS server with WebSockets enabled.
Open your web app in Firefox. The app connects to the NATS server's WebSocket endpoint.
Everything is fine.
Stop the NATS server for 3 minutes or so.
Start the NATS server again.
After a while, the web app connects to NATS server by establishing several WebSocket connections!
There should be only one connection, instead of 7 or so.

This happens only in Firefox. Chrome and Safari work without problems.
I tried both localhost and non-localhost setups.
This is most probably related to this Firefox behavior (see the accepted answer):

Found it. This is intentional behavior to comply with RFC 6455. Per this patch, it uses an exponential backoff up to 60 seconds max. Unfortunately I think this means auto-reconnecting to a websocket endpoint in Firefox is broken.

https://stackoverflow.com/questions/59548618/firefox-doesnt-close-websocket-immediately-on-connection-error
https://bugzilla.mozilla.org/show_bug.cgi?id=711793

I took some screenshots from Chrome (left) and Firefox (right) where this exponential backoff is clearly visible:

Here you see how multiple connections (should be only one) are established after restarting the NATS server. You can see the connections in NATS server's http://localhost:8222/connz endpoint too, or by running nats server report connections from command line.

@heikkilamarko Thanks for the report (and sorry for the delay). I confirmed this behavior as well. It does not appear to be an issue in Chrome (after another local test).

I understand the desire to comply with the RFC and do the expotential backoff with a max of 60 seconds, but it seems like each retry attempt (after some point) is opening a new connection rather than keeping one around. So then when it can finally reconnect, all previous attempted connections now get established.
I doubt this is something that can be solved in nats.ws, unless there is a way to override/shim the retry behavior. Otherwise, we should just put a note on the README calling this out for Firefox.
@aricart any thoughts?

I have not commented on this because as @bruth mentions it is possible that there's not much we can do. This is on my radar, and I suspect there may be something we can do, I just need to verify if my suspicion is correct.

@heikkilamarko actually - that was a small expedition - the firefox debugging tab shows you (and traces) all the ws connections that were opened - but really there's only one that is actually running. You can verify this by pointing your browser at the server's monitoring port, and seeing the number of connections.
The client properly issues a close() on the transports that fail to handshake within the expected amount of time.

also did a little test where I collect all the WebSocket created, and check on the status
 constructor() {
    this.version = VERSION;
    this.lang = LANG;
    this.connected = false;
    this.done = false;
    this.socketClosed = false;
    this.encrypted = false;
    this.peeked = false;
    this.yields = [];
    this.signal = deferred();
    this.closedNotification = deferred();

    WsTransport.monitor();
  }

  static monitor(): void {
    if(monitoring) return;

    monitoring = true;

    setInterval(() => {
      function rs(s: WebSocket): string {
        switch(s.readyState) {
          case 0: return "CONNECTING";
          case 1: return "OPEN";
          case 2: return "CLOSING";
          case 3: return "CLOSED";
          default: return "?????";
        }
      }
      const t = sockets.map((s, idx) => {
        const status = rs(s);
        return {idx, status}
      });
      console.log(t);
    }, 2000)
  }

Array(6) [ {…}, {…}, {…}, {…}, {…}, {…} ]

0: Object { idx: 0, status: "CLOSED" }

1: Object { idx: 1, status: "CLOSED" }

2: Object { idx: 2, status: "CLOSED" }

3: Object { idx: 3, status: "CLOSED" }

4: Object { idx: 4, status: "CLOSED" }

5: Object { idx: 5, status: "OPEN" }

length: 6

<prototype>: Array []
nats.js:9718:21

I prepared a minimal repro. I see the problem every time I run the following setup in Firefox.
JavaScript:
import { connect, StringCodec } from "nats.ws";

document.querySelector("#app").innerHTML = `

nats.ws firefox problem

    See the browser console for duplicate messages.

`;

subscribe();

async function subscribe() {
  try {
    const conn = await connect({
      servers: ["ws://localhost:9222"],
      name: "demo-ui",
      maxReconnectAttempts: -1,
      waitOnFirstConnect: true,
    });

    const sub = conn.subscribe("demo.>");

    const codec = StringCodec();

    for await (const msg of sub) {
      try {
        console.log({
          subject: msg.subject,
          data: codec.decode(msg.data),
        });
      } catch (er) {
        console.error(err);
      }
    }
  } catch (err) {
    console.error(err);
  }
}

NATS config:
server_name: demo

http_port: 8222

websocket {
    port: 9222,
    no_tls: true
}

Message sending command:
nats pub demo.message "test {{.Count}} [{{.TimeStamp}}]" --sleep 5s --count 0

Open the web app in Firefox. The app connects to the NATS server's WebSocket endpoint.
Everything is fine.
Stop the NATS server for 3-5 minutes or so.
Start the NATS server again.

Here are some screenshots where the problem is visible. Duplicate connections and messages. Notice that the extra connections are first without names, and then suddenly they are replaced with connections with the demo-ui name. Follow the Uptime column.

Can you add something to the name like Date.now().   On the test I made with latest, the pending connections on Firefox are closed and only the current connection is closed.

@heikkilamarko you are absolutely right - if you wait a very long amount of time, the behavior is completely different.

The crazy thing is that, my handler can detect that it was closed - but it's like the API calls have no effect.

Yes. The problem only happens when you wait long enough. Sorry. I should have made this more clear in my comments. It's great that you can reproduce the problem now.

My current workaround/fix to this problem is to set the timeout property to a value greater than 1 minute:
const conn = await connect({
      servers: ["ws://localhost:9222"],
      name: "demo-ui",
      timeout: 120_000, // This fixes the problem
      maxReconnectAttempts: -1,
      waitOnFirstConnect: true,
    });

Yes I tried a number of things, and even pre-cancelling (which actually happens now) is not honored. Annotating that the WebSocket was cancelled also has no effect (tried to dispose it on create). The current workaround is what you have. While the Firefox folks are doing the right thing by the RFC, the bigger issue is that the client is not able to understand that this is the case or the throttling that is being imposed. One thought I had was to make a version of the reconnect jitter (which takes a function) that implements a similar exponential backoff. This is on my list to do.


dead project ?

i am interested in this project , is it dead ?? could you please write a better docs ?? or some tutorials ?

Not related to this project, but you might be interested in https://updrafts.app

Thanks for sharing @smeijer been looking for something like this!

I am wondering the same thing.  Especially now that Tailwind 3.0 has been released.
Updrafts is very nice, but is yet another PAID monthly subscription to use anything more than just the BASIC features. 😑  It is also just another "Block Builder", not a REAL IDE.
Tailwind desperately needs a dedicated IDE, exactly like Bootstrap Studio.  I recently reached out to them, asking if they had any plans to create one, and they said NO. 😔  So currently the ONLY REAL IDE that I have found that natively supports Tailwind is Pinegrow.  And even that was added after the fact, so it is not dedicated to Tailwind.  It is also VERY complex.  I own it.
I even posted a question on the Tailwind GitHub page 9 MONTHS ago, looking for a dedicated IDE, but have yet to receive a single response.  I will have to try Reddit next, but I am guessing it is because one DOESN'T EXIST yet, which is why I am here now. 😔


Extratextage = 0 never displays extra text iso always

Setting "extratextage":"0", shuold always display extratext but it just does not display extratext at all.

In case it's not a fresh install, have you recompiled the capture binary?
make capture

It's a fresh install. Downloaded and installed on October 7. (make capture says: make: 'capture' is op to date.).

Applied patch. Made capture. Succes! Thank you!

Applied patch. Made capture. Succes! Thank you!

Glad it worked - I have fixed it in the main code just waiting for Thomas to approve it


vRedirector.historyBack() does not use reverse transition animation

In the VRouter body, I defined buildTransition, as well as onPop and onPopSystem.
  Future<void> _onPop(VRedirector vRedirector) async {
    print('_onPop');
    if (vRedirector.historyCanBack()) {
      vRedirector.historyBack();
    }
  }

However, in the case of vRedirector.historyBack(), the animation in the reverse direction is not played. Inside widgets, context.vRouter.historyBack() works as expected, with reverse animation.
onPressed: () {
              if (context.vRouter.historyCanBack()) {
                context.vRouter.historyBack();
              }
            },

Any idea why the reverse animation isn't happening? Or at least a workaround.

Source code
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:flutter_svg/svg.dart';
import 'package:mobileway/models/category_model.dart';
import 'package:mobileway/utils/constants.dart';
import 'package:pressable/pressable.dart';
import 'package:vrouter/vrouter.dart';

import '../../bloc/content_bloc/content_bloc.dart';
import '../../models/group_model.dart';

class CustomAppBar extends StatefulWidget implements PreferredSizeWidget {
final int? tabIndex;
final double height;

const CustomAppBar({Key? key, required this.tabIndex, required this.height})
    : super(key: key);

@override
State<CustomAppBar> createState() => _CustomAppBarState();

@override
// TODO: implement preferredSize
Size get preferredSize => Size.fromHeight(height);
}

class _CustomAppBarState extends State<CustomAppBar>
  with SingleTickerProviderStateMixin {
@override
Widget build(BuildContext context) {
  String goBackTitle = 'No name';

  bool isShopListVisible = widget.tabIndex == 1 && context.vRouter.path != "/shops";

  if (isShopListVisible) {
    final regExp = RegExp(r'[0-9]+$');
    String path = context.vRouter.path;
    RegExpMatch? mathId = regExp.firstMatch(path);
    int titleId = int.parse(path.substring(mathId!.start));

    if (path.contains('group')) {
      final List<GroupModel> groups =
          (context.read<ContentBloc>().state as ContentLoadedState).groups;
      GroupModel groupModel = groups.firstWhere((element) => element.id == titleId);
      goBackTitle = groupModel.name;
    } else if (path.contains('category')) {
      final List<CategoryModel> categories =
          (context.read<ContentBloc>().state as ContentLoadedState)
              .categories;
      CategoryModel categoryModel = categories.firstWhere((element) => element.id == titleId);
      goBackTitle = categoryModel.name;
    }
  }

  double sBarHeight = MediaQuery.of(context).viewPadding.top;
  return AppBar(
    backgroundColor: Theme.of(context).scaffoldBackgroundColor,
    shadowColor: Theme.of(context).hoverColor.withOpacity(0.1),
    elevation: 0,
    scrolledUnderElevation: 10,
    flexibleSpace: Column(
      children: [
        Padding(
          padding: EdgeInsets.only(
              bottom: kSmallPadding,
              top: sBarHeight + kSmallPadding,
              left: kDefaultPadding,
              right: kDefaultPadding),
          child: Row(
            mainAxisSize: MainAxisSize.max,
            children: [
              SvgPicture.asset(
                'assets/icons/logo.svg',
                width: 50.r,
                height: 50.r,
              ),
              SizedBox(width: kSmallPadding),
              if (widget.tabIndex == 3) ...[
                Padding(
                  padding: EdgeInsets.symmetric(horizontal: kSmallPadding),
                  child: Text('Mobile Way',
                      style: Theme.of(context)
                          .textTheme
                          .headline5!
                          .copyWith(fontWeight: FontWeight.w600)),
                ),
              ] else ...[
                Expanded(
                    child: Container(
                  height: 50.h,
                  child: CupertinoTextField(
                    suffix: Pressable.opacity(
                      onPressed: () {},
                      child: Padding(
                        padding: EdgeInsets.symmetric(horizontal: 14.h),
                        child: SvgPicture.asset(
                          'assets/icons/search.svg',
                          width: 20.r,
                          height: 20.r,
                          color: Theme.of(context).primaryColor,
                        ),
                      ),
                    ),
                    decoration: BoxDecoration(
                      boxShadow: [
                        BoxShadow(
                          color:
                              Theme.of(context).hoverColor.withOpacity(0.25),
                          spreadRadius: -6,
                          blurRadius: 13,
                          // changes position of shadow
                        )
                      ],
                      borderRadius: BorderRadius.circular(14.r),
                      color: Theme.of(context).scaffoldBackgroundColor,
                    ),
                    textAlignVertical: TextAlignVertical.center,
                    padding: const EdgeInsets.symmetric(horizontal: 14),
                  ),
                ))
              ],
            ],
          ),
        ),
        if (isShopListVisible) ...[
          Pressable.opacity(
            theme: const PressableOpacityTheme(opacityFactor: 0.6),
            onPressed: () {
              if (context.vRouter.historyCanBack()) {
                context.vRouter.historyBack();
              }
            },
            child: Row(
              crossAxisAlignment: CrossAxisAlignment.center,
              children: [
                SizedBox(width: kDefaultPadding),
                SvgPicture.asset(
                  'assets/icons/back-button.svg',
                  width: 12.r,
                  height: 16.r,
                  color: Theme.of(context).primaryColor,
                ),
                SizedBox(width: kSmallPadding),
                Flexible(
                  child: Text(
                    goBackTitle,
                    maxLines: 1,
                    style: Theme.of(context).textTheme.headline2,
                    overflow: TextOverflow.ellipsis,
                  ),
                ),
              ],
            ),
          )
        ],
      ],
    ),
  );
}
}

The animation in the reverse direction only plays when a page is removed from the top of the stack (which is what happens with pop but which can also be triggered by to if you go to the page bellow the current one. This is actually something which is handled by the Flutter navigator through the TransitionDelegate. This is not something I expose in VRouter but I could if you think this would solve your issue. You could try that by forking VRouter and passing the TransitionDelegate down. Let my know if you need help/have a PR :)

would this enable arbitrary pop transitions? So the user has the impression of popping the stack while he is actually switching to another nested route?

TransitionDelegate gives you full control so I guess you could achieve this effect if you wanted to

How can I access TransitionDelegate through vRouter, please?

The animation in the reverse direction only plays when a page is removed from the top of the stack (which is what happens with pop but which can also be triggered by to if you go to the page bellow the current one. This is actually something which is handled by the Flutter navigator through the TransitionDelegate. This is not something I expose in VRouter but I could if you think this would solve your issue. You could try that by forking VRouter and passing the TransitionDelegate down. Let my know if you need help/have a PR :)

I did not read well .. 😊 I would like to try a PR on this. Can you give me a push in the right direction? @lulupointu

Sure awesome!
For a first version you can have a look at how VRouter.observers are implemented. Though VRouter.observers are harder because they need to be unique per navigator so I have to place them into a proxy class.
What you would have to do for transitionDelegateis basically the same but simpler.
The next step would be to check whether it works for your use case. My main concern is that you might want to be able to access something like previousVRouterDataand newVRouterData to be able to dynamically change the transition. To achieve this you have 2 possible design:

Instead of transitionDelegateyou create a transitionDelegateBuilder, a function which gives 1 parameter (which is a class with the previousVRouterDataand newVRouterData, maybe it could be named VTransitionData)
Or you create a VTransitionDelegate class which would be basically the same as TransitionDelegatebut would include previousVRouterDataand newVRouterData in the resolve callback.

Solution 1 might be simpler so I would start with this and see how it feels when using it.
Let me know if you need more help 😊

Hi, I'm just a random user who discovered this package recently.
I've been researching this as well. If you've done the work of exposing the transitionDelegate, maybe just passing this delegate could work: https://github.com/slovnicki/beamer/blob/c3795ab39197cc3429c54c5ec3fa6a1202ddba88/package/lib/src/transition_delegates.dart#L45
?
They capture exiting routes and mark them as pop, which should trigger the reverse animation of VRouter, if I understand correctly.
I do not have the skills to foresee what will happen, and I would struggle forking and testing this myself but I thought I'd share this lead here :)


Incorrect API called in chatreadretrieveread.py

Please provide us with the following information:

This issue is for a: (mark with an x)
- [x ] bug report -> please search issues before submitting
- [ ] feature request
- [ ] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Minimal steps to reproduce

In the backend, the code attempts to call the "Completion" API using a chat model.
"/app/backend/approaches/chatreadretrieveread.py" at line 98:
    completion = **openai.Completion.create**(
        engine=**self.chatgpt_deployment**,
        prompt=prompt,
        temperature=overrides.get("temperature") or 0.7,
        max_tokens=1024,
        n=1,
        stop=["<|im_end|>", "<|im_start|>"])

Mention any other details that might be useful
Code to call the correct API:
    completion = **openai.ChatCompletion.create**(
        engine=self.chatgpt_deployment,
        **messages=[{"role": "user", "content": prompt}],**
        temperature=overrides.get("temperature") or 0.7,
        max_tokens=1024,
        n=1,
        stop=["<|im_end|>", "<|im_start|>"])

Thanks! We'll be in touch soon.

I think we are on our own to rewrite the chatcompletion part. I personally tested my gpt3.5 deployment and the chatcompletion is working, but the demo code seems to be developed using gpt3 to mimic gpt3.5 behavior at the beginning, and then switch to gpt3.5 but using it in the old fashion. My general thought is using the chatcompletion shall yield a better result.

Your code does not work for me. I get "Error: module 'openai' has no attribute 'ChatCompletion'" because the openai version was not recent enough. I changed it to openai==0.27.0, but now I get "openai.error.InvalidRequestError: Resource not found", and I can't seem to solve it.
Does someone have a working version? Thanks

@tickx-cegeka  Did you solve this problem? I am stuck on it.

See PR #385 where this is being worked on.

Thank you @pamelafox !! It is working now!!

Closing as this was resolved a while ago.


<EMAIL_ADDRESS>hash check failed

PS C:\WINDOWS\system32> scoop install twilio
Installing 'twilio' (5.8.1) [64bit] from twilio-scoop bucket
twilio-win32-x64.tar.xz (40.7 MB) [======================================================================================================================] 100%
Checking hash of twilio-win32-x64.tar.xz ... ERROR Hash check failed!
App:         twilio-scoop/twilio
URL:         https://twilio-cli-prod.s3.amazonaws.com/twilio-win32-x64.tar.xz
First bytes: FD 37 7A 58 5A 00 00 04
Expected:    1d46b24cb86a5a9307edfc4a6e282e1104b4760dd48572c314fecdef1b755466
Actual:      450092d7a7d9a7aeb9e5cd4c34ea172cea6115612633e1e976033c809932964d

Hi @305kwhite,  please re-try. We've upgraded the hash with the latest release, should be working now.


Bluetooth implementation in .NET MAUI

Hi thanks for the good work.
btw, Can you advise or post some sample code about Implementing Bluetooth (discover, read) in .NET MAUI Android?
highly appreciated your help on this.
Thanks

Better late then never


separate AWS Accounts for each stage requires separate IAM user & access/secret keys

sam pipeline init --bootstrap
Only the first stage is creating the PipelineUser IAM User and Access/Secret keys, the 2nd stage of the SAM Pipeline is skipping the user creation which is also an error.

Hello! Thanks for posting the issue. I'm trying to figure out your use case. Are you trying to use the init template with 2 separate accounts or just want bootstrap to create separate IAM Users for each account?
Our init templates currently don't support 2 separate AWS accounts so you might need to write your own template. If you just wish to bootstrap 2 IAM Users under separate accounts, you could delete .aws-sam/pipeline/pipelineconfig.toml then re-run sam pipeline bootstrap. That can create a new IAM user under a different account.
For your PR, deleting _load_saved_pipeline_user_arn() will allow creating different IAM Users for the same account, so it might not be the way we want to implement.
Let me know if you have any questions.

I am trying to use sam pipeline init --bootstrap with two separate AWS accounts.
When I do this, the IAM user & keys are only created for the first stage of the SAM pipeline.
This is correct for the case when both stages use the same AWS account but incorrect when creating a real pipeline with separate AWS accounts.
The existing cookiecutter github actions yaml works with two AWS accounts with minimal modifications (using the appropriate access/secret environment vars for each tasks).
Thank you for the quick response.

Hello!
Thanks for bring this up. Yes the sam pipeline can only uses single AWS account as of now. I will talk to the team and figure out what we would do for this. I will post updates once I have from the team.

Hello @russellballestrini ! There is one thing I'd like to clarify. Using a different account for the second stage is supported but creating a second pipeline user is not supported.
For your use case, yes you can setup the 2nd stage using a different account. Is there a specific reason that a 2nd Pipeline User is needed? Although the pipeline use is created in the first account, it doesn't affect which account will those resources will be created in.

In your use case, one single Pipeline User will be created and an IAM Role will be created (assumed by the pipeline user) for each AWS accounts. In this way, the pipeline can deploy to 2 different AWS account while only one Pipeline user is needed.
Resolving the issue. Feel free to re-open it if you have more questions.


Restarting the marks

I'm having an issue where I run through my coach marks and then try to do it again and nothing loads.  Is there an easy way to rewind to the start?

Hello @jeeftor, did you call CoachMarksController.stop() before restarting?

I tracked down the issue. It'll be fixed soon.


AoC 2016 day 11

Hi Mr Norvig,
In recent months I've been doing a lot of AoC puzzles in Python.
Today I solved 2016 day 11 then noticed you said in your dedicated notebook at the time that your own solution ran in about 14 min for part 2. I checked the Reddit thread for that day and many if not all Python solutions also took several minutes to complete for part 2.
I've been impressed by your concise and clear, functional style and overall efficiency across all your AoC solutions, therefore I'm surprised my own Python solution takes only about 2 seconds to run for part 2.
I guess there must be other explaining factors than the difference in hardware between then and now, or the fact that background processes may have slowed down your run at the time.
I hardly believe my solution is that much optimized (especially since I did not consider the symmetry trick you mention in the notebook) so I'm guessing it must contain some flaw somewhere.
If you'd like to have a look at my implementation, I'd be more than happy to be proven wrong and learn in the process.
Kind regards,
Clement

Hi Clement,
I haven't dived into it for quite some time, but 2 thing come to my mind:

I find it really astonishing that a AOC puzzle need 14 min run time, I expect a few second.
So my guess is there might be something weird with the 14 minutes.

I would suggest running a (line) profiler on @norvig code, see what is slow. Something like https://github.com/pyutils/line_profiler

With such a difference even without looking at the code, knowing that @norvig write relatively good code I doubt the code itself is slow. It is likely that it tries to explore a much bigger graph. I would start looking into wether the graph explored are of the same size.
Like if you have a generator and chip together, maybe @norvig code explore possibilities of re-separating them and yours does not ?


Generate scraping addresses from URLs or other identfiers

Some publishers have "hidden" or "deeply nested" URLs that do not occur on the landing page. For example Hindawi advertises:

                            Full-Text ePUB

to download ePUB, but there is no explicit XML link. However the analogous:
Full-Text XML

works.
Issue is to create a syntax for generating such addresses from information scraped from the landing page.

This is a sub-issue of #16 which would create a plugin system for post-processing of captured elements. Under this framework we could have something like:
"fulltext_xml": {
  "selector": "//a[contains(concat(' ', normalize-space(@class), ' '), ' full_text_epub ']",
  "attribute": "href",
  "process": [
    {
      "processor": "replace",
      "arguments": {
        "pattern": "epub",
        "replacement": "xml"
      }
    }
  ],
  "download": {
    "rename": "fulltext.xml"
  }
}

The process array could have any number of elements in it, and they would be executed in order, before any downloading or link-following occurred.

Possibly similar/related to this is the downloading of pdfs that are not directly linked to (such as in the attached screenshot). The pdf itself is then nested in that page, and is not the entire page. If the link from the original page is downloaded, the pdf does not work because it also downloads html alongside it.

Any way to select the initial link, and then select the link to the pdf from the new page? (as in example)

@chartgerink this case is handled by scraperJSON already using the 'follow' feature. You first capture the link to the PDF page as an element, then you have another element that 'follows' that element, meaning the link is followed and the following element is extracted from the resulting page.
Simple example that should work for Developmental Science (if you fill in the selector for pdf_container:
{
  "url": "onlinelibrary.wiley.com",
  "followables": {
    "pdf_container": {
      "selector": "//a[text()='link to the pdf container page']",
      "attribute": "href"
    }
  },
  "elements": {
    "fulltext_pdf": {
      "selector": "//embed[@name='plugin']",
      "attribute": "src",
      "follow": "pdf_container",
      "download": {
        "rename": "fulltext.pdf"
      }
    }
  }
}

Note that in this case pdf_container has been put in followables rather than elements, so that it is excluded from the results. However, you can also follow any element in elements so that both the followed element and the one following it will be in the results.

Hm I cannot get it to work. The page renders but quickscrape keeps returning that the selector had no results. I have tried using the direct XPath; also tried the direct link to the container as scrapelink, but to no avail. When using the direct link it does extract other available properties so it is not as if it was just plainly blocked on that page. Do you maybe have additional ideas?
Ps. Thanks for providing such a fast response, Richard!


[db410c] 10 Second delay

I'm finding some odd interactions with timing.  I suspect it's related to the programmer (target flash stub) used.  Meaning it will vary depending on SoC target.
Once the flash stub is pushed via sahara it jumps into it's entry point.  Depending on the flash stub used it may need to train the DDR, etc.  So completion time varies on flash stub implementation (target implementation).
The current timeout/delay:  https://github.com/andersson/qdl/blob/master/firehose.c#L617
I find dropping this timeout to 500 ms works reliably.  This delay corresponds to the first entry of the listed log.
Then a default configuration is sent with a big default value.  In the case of the apq8016 emmc flash stub it causes a timeout after re-config.  Seems it might be better to read then modify, which would eliminate this additional timeout/delay.
Delay is ~10 seconds
Putting on my factory hat - that's really expensive :)
I'll look at this a bit more later.
qdl: firehose operation timed out
FIREHOSE WRITE: <?xml version="1.0"?>
<data><configure MemoryName="emmc" MaxPayloadSizeToTargetInBytes="1048576" verbose="0" ZLPAwareHost="1" SkipStorageInit="0"/></data>

FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?><data><log value="Host's payload to target size is too large" /></data>
LOG: Host's payload to target size is too large
FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?><data><log value="logbuf@0x0801CDC0 fh@0x08019C28" /></data>
LOG: logbuf@0x0801CDC0 fh@0x08019C28
FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?><data><response value="NAK" MinVersionSupported="1" MemoryName="eMMC" MaxPayloadSizeFromTargetInBytes="4096" MaxPayloadSizeToTargetInBytes="16384" MaxPayloadSizeToTargetInBytesSupported="16384" MaxXMLSizeInBytes="4096" Version="1" TargetName="8916" /></data>
FIREHOSE WRITE: <?xml version="1.0"?>
<data><configure MemoryName="emmc" MaxPayloadSizeToTargetInBytes="16384" verbose="0" ZLPAwareHost="1" SkipStorageInit="0"/></data>

ERROR: n = -1, errno = 110 (Connection timed out)
FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?><data><log value="logbuf@0x0801CDC0 fh@0x08019C28" /></data>
LOG: logbuf@0x0801CDC0 fh@0x08019C28
qdl: firehose operation timed out
FIREHOSE WRITE: <?xml version="1.0"?>
<data><configure MemoryName="emmc" MaxPayloadSizeToTargetInBytes="16384" verbose="0" ZLPAwareHost="1" SkipStorageInit="0"/></data>

FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?><data><log value="logbuf@0x0801CDC0 fh@0x08019C28" /></data>
LOG: logbuf@0x0801CDC0 fh@0x08019C28
FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?><data><response value="ACK" MinVersionSupported="1" MemoryName="eMMC" MaxPayloadSizeFromTargetInBytes="4096" MaxPayloadSizeToTargetInBytes="16384" MaxPayloadSizeToTargetInBytesSupported="16384" MaxXMLSizeInBytes="4096" Version="1" TargetName="8916" /></data>
[CONFIGURE] max payload size: 16384
FIREHOSE WRITE: <?xml version="1.0"?>
<data><program SECTOR_SIZE_IN_BYTES="512" num_partition_sectors="1" physical_partition_number="0" start_sector="131072" filename="sbc_1.0_8016.bin"/></data>

FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?><data><log value="start 131072, num 1" /></data>
LOG: start 131072, num 1
FIREHOSE READ: <?xml version="1.0" encoding="UTF-8" ?><data><response value="ACK" rawmode="true" /></data>

localhost:/home/moctaviano/Downloads/Lenovo_Yoga_Tab_3_10_YT3-X50FQDL/Firmware # qdl --debug --storage emmc --include '/home/moctaviano/Downloads/Lenovo_Yoga_Tab_3_10_YT3-X50FQDL/Firmaware/' '/home/moctaviano/Downloads/Lenovo_Yoga_Tab_3_10_YT3-X50FQDL/Firmware/prog_emmc_firehose_8909_ddr.mbn' '/home/moctaviano/Downloads/Lenovo_Yoga_Tab_3_10_YT3-X50FQDL/Firmware/rawprogram_unsparse.xml' '/home/moctaviano/Downloads/Lenovo_Yoga_Tab_3_10_YT3-X50FQDL/Firmware/patch0.xml'
HELLO version: 0x2 compatible: 0x1 max_len: 1024 mode: 0
READ image: 13 offset: 0x0 length: 0x34
READ image: 13 offset: 0x34 length: 0x120
READ image: 13 offset: 0x1000 length: 0x148
READ image: 13 offset: 0x418cc length: 0x1000
READ image: 13 offset: 0x428cc length: 0x1000
READ image: 13 offset: 0x438cc length: 0x998
READ image: 13 offset: 0x44264 length: 0x978
READ image: 13 offset: 0x2000 length: 0x1000
READ image: 13 offset: 0x3000 length: 0x1000
READ image: 13 offset: 0x4000 length: 0x1000
READ image: 13 offset: 0x5000 length: 0x1000
READ image: 13 offset: 0x6000 length: 0x1000
READ image: 13 offset: 0x7000 length: 0x1000
READ image: 13 offset: 0x8000 length: 0x1000
READ image: 13 offset: 0x9000 length: 0x1000
READ image: 13 offset: 0xa000 length: 0x1000
READ image: 13 offset: 0xb000 length: 0x1000
READ image: 13 offset: 0xc000 length: 0x1000
READ image: 13 offset: 0xd000 length: 0x1000
READ image: 13 offset: 0xe000 length: 0x1000
READ image: 13 offset: 0xf000 length: 0x1000
READ image: 13 offset: 0x10000 length: 0x1000
READ image: 13 offset: 0x11000 length: 0x1000
READ image: 13 offset: 0x12000 length: 0x1000
READ image: 13 offset: 0x13000 length: 0x1000
READ image: 13 offset: 0x14000 length: 0x1000
READ image: 13 offset: 0x15000 length: 0x1000
READ image: 13 offset: 0x16000 length: 0x1000
READ image: 13 offset: 0x17000 length: 0x1000
READ image: 13 offset: 0x18000 length: 0x1000
READ image: 13 offset: 0x19000 length: 0x1000
READ image: 13 offset: 0x1a000 length: 0x1000
READ image: 13 offset: 0x1b000 length: 0x1000
READ image: 13 offset: 0x1c000 length: 0x1000
READ image: 13 offset: 0x1d000 length: 0x1000
READ image: 13 offset: 0x1e000 length: 0x1000
READ image: 13 offset: 0x1f000 length: 0x1000
READ image: 13 offset: 0x20000 length: 0x1000
READ image: 13 offset: 0x21000 length: 0x1000
READ image: 13 offset: 0x22000 length: 0x1000
READ image: 13 offset: 0x23000 length: 0x1000
READ image: 13 offset: 0x24000 length: 0x1000
READ image: 13 offset: 0x25000 length: 0x1000
READ image: 13 offset: 0x26000 length: 0x1000
READ image: 13 offset: 0x27000 length: 0x1000
READ image: 13 offset: 0x28000 length: 0x1000
READ image: 13 offset: 0x29000 length: 0x1000
READ image: 13 offset: 0x2a000 length: 0x1000
READ image: 13 offset: 0x2b000 length: 0x1000
READ image: 13 offset: 0x2c000 length: 0x1000
READ image: 13 offset: 0x2d000 length: 0x1000
READ image: 13 offset: 0x2e000 length: 0x1000
READ image: 13 offset: 0x2f000 length: 0x1000
READ image: 13 offset: 0x30000 length: 0x1000
READ image: 13 offset: 0x31000 length: 0x1000
READ image: 13 offset: 0x32000 length: 0x1000
READ image: 13 offset: 0x33000 length: 0x1000
READ image: 13 offset: 0x34000 length: 0x1000
READ image: 13 offset: 0x35000 length: 0x1000
READ image: 13 offset: 0x36000 length: 0x1000
READ image: 13 offset: 0x37000 length: 0x1000
READ image: 13 offset: 0x38000 length: 0x1000
READ image: 13 offset: 0x39000 length: 0x1000
READ image: 13 offset: 0x3a000 length: 0x1000
READ image: 13 offset: 0x3b000 length: 0x1000
READ image: 13 offset: 0x3c000 length: 0xdc
READ image: 13 offset: 0x3c0dc length: 0x1000
READ image: 13 offset: 0x3d0dc length: 0x1000
READ image: 13 offset: 0x3e0dc length: 0x1000
READ image: 13 offset: 0x3f0dc length: 0x1000
READ image: 13 offset: 0x400dc length: 0x1000
READ image: 13 offset: 0x410dc length: 0x7f0
END OF IMAGE image: 13 status: 0
DONE status: 0
qdl: firehose operation timed out
FIREHOSE WRITE:

ERROR: n = -1, errno = 19 (No such device)


HELP! I also want to make such app. please guide

Sir I also want to make such app, could you please tell how should I proceed?
Is there any tutorial for for it?
Please help sir

The Readme has all the necessary info. You just need to create a new App from android studio, add the requested dependency, and implement it on a Activity.


Task 67-72: AbductiveNLI

Created 6 tasks (4 answer generation, 2 classification)

FYI: Looks like your PR is failing the tests.

Sorry for the late reply! I've been traveling for the past week. Will fix it once I return on Tuesday, and resubmit.

Please pull and merge with the main branch. That should trigger the new automatic tests.

pinging the thread to make sure you have seen the comments above.

Yes, I think it's passing all the tests now?

Drop the tasks/.DS_Store file.

Reviewing the first task task067_abductivenli_answer_generation:

For the source field, include a link to the paper.
"an incomplete three-part story" ->  of a three-part story (drop "incomplete"); the story itself is complete, but what is given (beginning +ending) is "incomplete"
"Your job is to complete the short story by writing a probable middle of the story that explains why the ending follows after the beginning and justify the created middle by describing the central message/theme of the story." -> simplify this, something along with this: Your job is to complete the story by writing a middle sentence that creates a seamless connection between the first sentence and the last sentence.
"Input sentences must be short, have fewer than 10 words, and be simple as if narrating to a child." --> "Input" or output/generated?
Not sure what this is saying: "The central message must be expressed as a general rule of thumb. For example: people don't like wearing soiled clothes."

Please apply these suggestions for the remaining tasks, wherever possible.

Made the changes over all tasks.

@swarooprm feel free to merge when the changes updates are applied + you're happy.

Sure, made the update

Let's make it more clear:  with output of 1 or 2 -> by indicate 1 or 2 in the output (or something that is more clear).

All right, have updated that as well.


Not sure if the code is public domain

There's a CC-0 dedication in the file, but the interpreter itself outputs:
MalbolgeLisp. Copyleft (C) 2020 THE GREEK EMPRESS.
All wrongs reserved.

If it is indeed copyleft, which license is it under? If it's not, can this greeting be changed?

I'll change the banner later. The interpreter is, indeed, CC0. If you want to redistribute it, feel free to ignore the message and treat the program as CC0'd.

solved as of v1.1
...lol


chore(deps): update renovate/renovate docker tag to v37.33.2

This PR contains the following updates:

Package
Update
Change

renovate/renovate
minor
37.31.4 -> 37.33.2

Release Notes

renovatebot/renovate (renovate/renovate)
v37.33.2
Compare Source
Documentation

local-development (#25394) (815b54c)
minimal reproductions: forcing pending updates (#25406) (0fd1a3e)

Miscellaneous Chores

deps: update dependency @types/callsite to v1.0.33 (#25386) (c500642)
deps: update dependency @types/fs-extra to v11.0.3 (#25428) (e44cdb3)
deps: update dependency @types/global-agent to v2.1.2 (#25397) (ad5833a)
deps: update dependency @types/json-dup-key-validator to v1.0.1 (#25408) (f7eed7c)
deps: update dependency @types/linkify-markdown to v1.0.2 (#25409) (2ea9fe0)
deps: update dependency @types/lodash to v4.14.200 (#25412) (a20d6b3)
deps: update dependency @types/luxon to v3.3.3 (#25413) (b62bdce)
deps: update dependency @types/markdown-it to v13.0.3 (#25415) (4f58b35)
deps: update dependency @types/markdown-it to v13.0.5 (#25417) (f5f7315)
deps: update dependency @types/marshal to v0.5.2 (#25418) (96359d9)
deps: update dependency @types/mdast to v3.0.14 (#25419) (ee176ba)
deps: update dependency @types/moo to v0.5.8 (#25424) (ae5ecec)
deps: update dependency @types/parse-link-header to v2.0.2 (#25425) (de4b28c)
deps: update node.js to v20 (#25357) (8deca6f)

Build System

deps: update dependency @types/tmp to v0.2.5 (#25427) (19f9b09)

v37.33.1
Compare Source
Miscellaneous Chores

deps: update dependency @types/js-yaml to v4.0.8 (#25405) (bf0ba5e)

Build System

deps: update dependency @types/ms to v0.7.33 (#25404) (ca637dd)

v37.32.0
Compare Source
Features

versioning/gradle: Support Gradle prefix versions (#25379) (4753eb0)

Miscellaneous Chores

deps: update dependency @types/auth-header to v1.0.4 (#25381) (78e85e7)
deps: update dependency @types/aws4 to v1.11.5 (#25382) (393cc51)
deps: update dependency @types/breejs__later to v4.1.4 (#25383) (0c63b8b)
deps: update dependency @types/bunyan to v1.8.10 (#25384) (8824987)
deps: update dependency @types/cacache to v17.0.1 (#25385) (01eba6b)
deps: update dependency @types/changelog-filename-regex to v2.0.1 (#25387) (fdbba15)
deps: update dependency @types/clean-git-ref to v2.0.1 (#25388) (1c5e087)
deps: update dependency @types/common-tags to v1.8.3 (#25389) (13e4d5f)

v37.31.7
Compare Source
Build System

deps: update dependency @renovatebot/ruby-semver to v3.0.16 (#25374) (8d66fba)

v37.31.5
Compare Source
Bug Fixes

github: make automatic hostRules opt-in experimental (#25361) (042b44c)

Miscellaneous Chores

fix coverage (3c8bacc)

Build System

deps: update dependency emoji-regex to v10.3.0 (#25362) (f74db32)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

:tada: This PR is included in version 5.2.12 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


new diskrp admin powershell sdk

new diskrp admin powershell sdk

@FireDefend we just changed the default branch to dev. Can you please make the PR against dev branch pls?

@FireDefend we just changed the default branch to dev. Can you please make the PR against dev branch pls?

Thanks for the reminding, will create a new PR against dev


Prohibit Mispelled

ProhitConnectionToNonDomainNetworksWhenConnectedToDomainAuthenticatedNetwork
should be spelled
ProhibitConnectionToNonDomainNetworksWhenConnectedToDomainAuthenticatedNetwork
Prohibit
On the linked header.

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

ID: ad2d7264-e0a4-ead4-d110-08b5b915ef2e
Version Independent ID: 0e7961d5-6bdf-2765-7fdc-20fc469122a4
Content: WindowsConnectionManager Policy CSP - Windows Client Management
Content Source: windows/client-management/mdm/policy-csp-windowsconnectionmanager.md
Product: windows-client
Technology: itpro-manage
GitHub Login: @vinaypamnani-msft
Microsoft Alias: vinpa

@pkutz5700 This CSP doc is generated automatically and unfortunately, the typo is in the actual policy Name itself. I would suggest that you submit feedback for the policy name itself via the Feedback Hub app so it can be fixed in the Windows code. For more information, see Send feedback to Microsoft with the Feedback Hub app.


Allow staging of a region in inline diff view

Suppose I want to stage 5 lines, I have to press 10 keys. l 5 times - along with down arrow 5 times to move to the next line.
I think we should allow users to select a bunch of lines (forming a continous region) and then stage that. Preferably with l key itself.

Yes, we could the each line in selection.

This is actually very difficult to accomplish, and I'm inclined to say "no".  There would have to be a lot of specialized logic surrounding what sorts of selections could occur - entire + hunks, parts of + hunks, whole hunks and parts of others, etc.
Most folks would ultimately use their keyboards to select and then stage, since the mouse would be clumsy in this case, so we wouldn't be saving a ton of keystrokes either.
I'm willing to hear a case for it (and please say so if you think I'm missing something), but for now I'm going to close as wont-fix.

What if the ‘l’ shortcut moved the cursor to the next line after staging the current line? That way you could tap your way through a series of adjacent lines just by hitting the ‘l’ key repeatedly.

That's much more doable.  I find myself pressing l.l..l.l.l to scroll through a diff and incrementally stage.  Do you find that cumbersome @sentience?  I'm open to making this configurable: auto-scroll-after-stage or some such.

I don’t think implicitly scrolling to the next changed line is necessarily desirable. After staging a line I usually like to see the same view, just with the highlighting updated, as clear confirmation that the action I requested has been performed.
I think simply moving the cursor to the next line after staging a line would be a nice middle-ground, where it would enable l-l-l’ing through a series of adjacent lines (saving the ‘.’ keystrokes in your workflow), without potentially shifting the view to a change much later in the file and losing the user’s sense of place.

I'd actually created another issue #427 for tracking this moving to next hunk (or next line.) So yeah having a setting for that would be great!

That is a much easier to implement the the making a selection and stage that section. We will make it this new setting. This should not be difficult to make compare to staging selections.

Perhaps surprisingly, there's still a bit of work to do to move to the next line after pressing L.  For example, if you staged a red line, you probably don't want to move to the next line - you'd wan to stay on the same one.
In any case, I think we have a number of possible ways to change how auto-scroll works in the inline-diff views.  Please leave feedback in #446 regarding the use cases you have in mind and any thoughts you might have on implementation.


Add NEasyAuthMiddleware link in documentation for EasyAuth

Link to a repo with AspNetCore integration support and a how to article

@dasiths : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@cephalin are you happy to merge this?

Note that publishing in this repository is suspended until Tuesday, May 19. Merging will resume at 7:00 AM PT Tuesday. Authors can still review and sign off on PRs during this time. Thanks

@ktoliver @cephalin waiting for an update on this. Thanks.

Sorry we generally don't add third-party links unless internally deemed necessary. #please-close

@cephalin what about the 3 other 3rd party links there? 2 of them do not work and are not maintained.


Verify DoneJS Chat + PMO in donejs@alpha

This is a final verification before release.

[x] - Mac - DoneJS Chat
[x] - Windows - DoneJS Chat
[ ] - Mac - Place My Order
[ ] - Windows - Place My Order

Holding off on possibly #419

…and maybe https://github.com/donejs/donejs/issues/843

I got through donejs-chat today. Plan on going heads-down tomorrow to verify PMO.

BOOOOOOOOOOOM! 💥


Add facility to copy/move annotations from one page to another page

Use cases:
Edit a pdf file in a qpdf based application while simultaneously annotating (a copy of) it using an external tool. Import the newly created annotations.
Copy or split a page. Selectively move some of the annotations to the new page, for example, based on the location of the annotation.
See for example https://github.com/pdfarranger/pdfarranger/issues/940#issuecomment-1755119962

I think qpdf can already do this. See QPDFPageObjectHelper::copyAnnotations. I'm closing for now, but feel free to reopen if you think something beyond this is needed. I don't see this as something that would make sense to add to the CLI. pdfarranger could make use of the annotation copying functionality from libqpdf, assuming it is exposed to pikepdf.


[FEATURE REQUEST] Toolkit Reports to automatically adjust date range to include current month

Is your feature request related to a problem? Please describe.
Whenever a new month rolls around, I have to manually go into every Toolkit Report and change the date range to include the new month. Otherwise, it will only show the reports up until the previous month (or wherever the last used range was). This is understandable because I know users like to have full control of the parameters of their reports, but I think there is a solution that can help:
Describe the solution you'd like
Perhaps if the user currently has the report date range set to "All Dates" or set to a date range that includes the most recent month, when the new month rolls around, it should automatically be updated to include the new month.
Describe alternatives you've considered
Maybe a toggle for users to choose whether the above solution will take effect or if they would rather their reports remain 100% manual
Additional context
Thanks!!

I completely agree with this, I am doing the exact same process every 1st of the month and it is a tad annoying. I haven't had time to look at the code, but I believe it'd be feasible to make this dynamic.

Also agree! But one caveat: my use case most often excludes the current (partial) month. Automatically updating of ranges like trailing year, YTD, etc. while allowing a choice of whether to include the current month would be awesome.

Like with rconnorlawson add.  Would also like this in Account View -- Date Range selected should be retained when switching accounts instead of within each account. Will submit separately.


refactor: make zot 'go get'-able

github.com/jtblin/go-ldap-client is an abandoned project and not keeping
up with go modules, so pull that code in (single file, BSD license)

minor refactor ldap as a result of 1)

commit docs which should change only with dist-spec changes

update go.mod

Might be nice to have these as separate commits since they're separate logical changes.
Other than that, if the LDAP library is abandoned, perhaps we should look into switching to a different one?

Codecov Report

Merging #39 into master will decrease coverage by 0.77%.
The diff coverage is 27.08%.

@@            Coverage Diff             @@
##           master      #39      +/-   ##
==========================================
- Coverage   55.52%   54.74%   -0.78%
==========================================
  Files          11       11
  Lines        1666     1686      +20
==========================================
- Hits          925      923       -2
- Misses        638      660      +22
  Partials      103      103

Impacted Files
Coverage Δ

pkg/api/ldap.go
29.26% <0%> (-6.38%)
:arrow_down:

pkg/api/auth.go
72.72% <92.85%> (-0.55%)
:arrow_down:

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 9a18c1b...4ea9382. Read the comment docs.

Might be nice to have these as separate commits since they're separate logical changes.
Other than that, if the LDAP library is abandoned, perhaps we should look into switching to a different one?

This LDAP library was the easiest one to use in terms of interfaces. We could explore that.

Ironically, it is the LDAP library that is breaking the "go get" behavior we want, so a cascade effect :\

Ok, but can't we split the commits? I don't see how it's related.

Ironically, it is the LDAP library that is breaking the "go get" behavior we want, so a cascade effect :\

Ok, but can't we split the commits? I don't see how it's related.

I can probably do two splits - 1) ldap + go.mod changes, and 2) the doc changes.

Ironically, it is the LDAP library that is breaking the "go get" behavior we want, so a cascade effect :\

Ok, but can't we split the commits? I don't see how it's related.

I can probably do two splits - 1) ldap + go.mod changes, and 2) the doc changes.

Do you want separate PRs for these though?

Nah, this lgtm!


redis:v1 Example Missing Properties in Expansion

$ dm deploy redis:v1
2015/11/11 11:25:34 cannot deploy template named : status code: 400 status: 400 Bad Request : cannot expand template named  (template expansion:expander service response:&{400 Bad Request 400 HTTP/1.1 1 1 map[Date:[Wed, 11 Nov 2015 19:25:34 GMT] Content-Length:[622] Content-Type:[text/plain; charset=utf-8]] 0xc20824e300 622 [] false map[] 0xc208033ad0 }
):
resources:

name: redis:v1
type: https://raw.githubusercontent.com/kubernetes/deployment-manager/master/types/redis/v1/redis.jinja

$ kubectl logs expandybird-rc-dj2di
2015/11/11 19:22:27 expandybird: expand: handling request:POST /expand
2015/11/11 19:22:28 Expansion process: pid: 14 SysTime: 20ms UserTime: 84ms
2015/11/11 19:22:28 expandybird: expand: returning response: status code:400, status:error (error expanding template : Traceback (most recent call last):
File "./expansion/expansion.py", line 372, in
main()
File "./expansion/expansion.py", line 369, in main
print Expand(template, imports, env=env, validate_schema=validate_schema)
File "./expansion/expansion.py", line 57, in Expand
raise ExpansionError('config', str(e))
main.ExpansionError: 'properties' is undefined Resource: config
) expanding template:
&{ resources:

name: redis:v1
type: https://raw.githubusercontent.com/kubernetes/deployment-manager/master/types/redis/v1/redis.jinja
[0xc820010cc0 0xc820010ce0]}

@goltermann What is the status of this issue? Is there a PR under development to fix it?

Worked on it a bit today, but didn't get to the bottom of it.  I'm out tomorrow, so if someone wants to pick it up, go for it.  If it's still around, I'll look again Friday.

I'm happy to pick this up tomorrow.

This was just a template issue. Unfortunately the jinja library gives pretty bad error messages during expansion.
@vagababov will hopefully help us improve the error messages from jinja.


Cannot debug nor compile

I installed the sample example and created the new project on CPC folder.
I can see the emulator on the right but I cannot debug and even compile. I got the error message when I'm pushing on F5 "You don't have an extension for debugging 'Assembler file'.
Nothing happened when I push on F7.

issue was linked because I have forgotten to remove another extension...


Include subfolder locales in checks

What problem does this pull request solve?
Trello card:

We had the i18n-tasks gem configured so that it only looked at files in the top level of config/locales. We have quite a lot of locale files in subfolders of config/locales, which weren't covered by these checks.
This PR:

updates the config to include the subfolders in the checks
normalizes the files with i18n-tasks normalize

Things to consider when reviewing

Ensure that you consider the wider context.
Does it work when run on your machine?
Is it clear what the code is doing?
Do the commit messages explain why the changes were made?
Are there all the unit tests needed?
Has all relevant documentation been updated?

Good spot 😱


Results didn't appear for new added directory?

When search files, the new added directory of the project didn't appear in the menu? does something wrong or because some cache do not clear?

what is the output of :echo g:Lf_Debug_Cmd ?

echo g:Lf_Debug_Cmd

git ls-files  "/data/fenglv/ClickHouse" && git ls-files --others --exclude-standard  "/data/fenglv/ClickHouse"

echo g:Lf_Debug_Cmd

git ls-files "/data/fenglv/ClickHouse" && git ls-files --others --exclude-standard "/data/fenglv/ClickHouse"

Run this command in the command line to see why.


Could not load Cake.Powershell.2.0.0\lib\net6.0\Cake.Powershell.dll (missing System.Management.Automation, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35)

I was under the impression from the Cake Powershell page that Cake 2.0.0 is supported but when I run: dotnet cake build.cake I get the following error:
Could not load Z:\Dev\GitHub\MyProj\build\tools\Addins\Cake.Powershell.2.0.0\lib\net6.0\Cake.Powershell.dll (missing System.Management.Automation, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35)

I'm referencing Cake.Powershell via an addin in my cake file: #addin nuget:?package=Cake.Powershell&version=2.0.0.
Any idea of the problem?
Any plans for Cake 3.0.0 support?
Thanks

解决了吗，我也碰到此问题，cake4.0

I had the same issue with Cake.powershell 3.0.0
The package requires system.automation.7.3.3 and it has one of the dll missing

Hi there!
That's an interesting bug and it would be great if someone could solve it for good. But it might not be an easy one.
I have created a dummy test project to reproduce the bug. It is available in a separate repository.
This allowed me to find a workaround for this bug. Feel free to try it out.
In a few words:

Add a cake.config file with these few lines:[NuGet]
LoadDependencies=true

Instead of only adding Cake.Powershell in your cake script, also add Microsoft.PowerShell.Commands.Management version 7.4.3#addin nuget:?package=Cake.Powershell&version=3.0.0
#addin nuget:?package=Microsoft.PowerShell.Commands.Management&version=7.4.3

This bug seems to be resolved with Cake.PowerShell 4.0.0.
All you need to do is add Cake.PowerShell 4.0.0 as add-in with dependencies.
#addin nuget:?package=Cake.Powershell&version=4.0.0&loaddependencies=true

The &loaddependencies=true is required!


Failed to allocate mbuf error for RX when set rss queue to 16

When I set the interface rss queue to 16, I got an error, the program worked well when I set rss queue to 8 and 4.
screenshot for the error:

dpdk settings:

answer to the problem you are facing is based on the edit you have done failed to allocate RX queue mbuf.  Please do the necessary change to eal-args to satisfy your queues..


cmd line for deploying models to power bi premium

is there a cmd line code to deploy a .bim file to pbi premium. tried variations on the cmd line code for deploying a model to azure AS but didn't get it to work. would be great to put this variation here
https://github.com/otykier/TabularEditor/wiki/Command-line-Options
Thanks!

I'm afraid this won't be possible until PBI Premium allows service principals to connect. Currently, only interactive authentication is allowed, which prevents us from using the CLI.
If your tenant does not have MFA enabled, I think interactive authentication is not strictly required, so in that case, you may be able to deploy through CLI by providing your user name and password in the connection string, like:
Provider=MSOLAP;Data Source=powerbi://api.powerbi.com/v1.0/[tenant name]/[workspace name];User ID=[user name];Password=[password];Persist Security Info=True;Impersonation Level=Impersonate

Hmm, yeah I tried this and got the following error. It's odd that pbi premium doesn't allow but Azure AS does.
Deployment failed! Unable to obtain authentication token using the credentials provided. If your Active Directory tenant administrator has configured Multi-Factor Authentication or if your account is a Microsoft Account, please remove the user name and password from the connection string, and then retry. You should then be prompted to enter your credentials.

Actually, support for service principals was announced a couple of weeks ago: https://powerbi.microsoft.com/en-us/blog/announcing-support-for-service-principals-using-the-xmla-endpoint-in-power-bi-premium/
Have you tried this approach?

haven't been able to get it to work but thought of another idea:
It would be great to have an option within the deployment wizard to output the equivalent cmd prompt code (with switches) that would do the deployment.

Please see this blog-post for more details on deployment to PBI Premium using Service Principals.

works great now after connecting the service principal as you suggested. Thanks!


Create a different template for guest authors

We welcome guest authors to the CC blog. When there's a guest author, this is the way it's displayed if you look for the author's name in Google.

That's confusing in 2 ways:

Just looking at that page, it's not clear for the audience whether this person is part of the "Team" or not. Just looking at the navigation, gives the idea he is.
The Author page is similar to the real team people.

Is there any way to create a different template for guest authors?
One more thing:

If you go to a random author URL (say, this), it does not show a 404 page but a very odd page of "Articles by: Jennie Rose Halperin"

About the 404 issue, I'm going to create a separate ticket


Is it possible to add third party extension for jmeter?

For example, there is a requirement for amqp publisher, would it be possible to add it?

Did you mean the JMeter plugin which is not available in public?


allow Python v3.11

Currently:
> pip install scida

  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [8 lines of output]
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-install-9dpfslea/numba_365e4a052da1401e902493b55ae552aa/setup.py", line 51, in <module>
          _guard_py_ver()
        File "/tmp/pip-install-9dpfslea/numba_365e4a052da1401e902493b55ae552aa/setup.py", line 48, in _guard_py_ver
          raise RuntimeError(msg.format(cur_py, min_py, max_py))
      RuntimeError: Cannot install on Python version 3.11.4; only versions >=3.7,<3.11 are supported.
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

I see this comes from numba, and was resolved in 0.57, so really the numba<0.57,>=0.56 (from scida) requirement needs to be relaxed.

correct, the numba>=0.56 requirement came from https://github.com/numba/numba/issues/8304 . Update to numba>=0.57 with next commit since problem with llvmlite seems to be resolved.


net: app: Split code for configuring network to a separate lib, "config"

net_app library consisted of 2 disjoint parts: a) library to
setup/configure networking on the application startup; b) library
to setup client and server connections.
As the configuration library is universally useful and is a generic
Zephyr networking component, split it out to a seperate top-level
networking library under net/lib/config/.
Fixes: #7658
Signed-off-by: Paul Sokolovsky<EMAIL_ADDRESS>

Codecov Report

Merging #8460 into master will decrease coverage by 2.18%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #8460      +/-   ##
==========================================
- Coverage   64.61%   62.43%   -2.19%
==========================================
  Files         421      381      -40
  Lines       40296    30109   -10187
  Branches     6803     4918    -1885
==========================================
- Hits        26038    18799    -7239
+ Misses      11125     9390    -1735
+ Partials     3133     1920    -1213

Impacted Files
Coverage Δ

subsys/net/lib/config/init.c
60.25% <ø> (ø)

subsys/net/lib/dns/dns_pack.h
0% <0%> (-90.48%)
:arrow_down:

subsys/net/lib/http/http_parser_url.c
1.71% <0%> (-70.86%)
:arrow_down:

subsys/net/ip/rpl.h
0% <0%> (-69.24%)
:arrow_down:

subsys/net/ip/route.c
4.42% <0%> (-48.57%)
:arrow_down:

subsys/net/ip/nbr.c
47.22% <0%> (-44.45%)
:arrow_down:

subsys/net/ip/utils.c
41.81% <0%> (-38.37%)
:arrow_down:

subsys/net/ip/ipv6.c
10.6% <0%> (-35.71%)
:arrow_down:

subsys/net/ip/ipv6.h
66.66% <0%> (-33.34%)
:arrow_down:

subsys/net/ip/net_mgmt.c
48.46% <0%> (-32.53%)
:arrow_down:

... and 66 more

Continue to review full report at Codecov.

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

@jukkar, @tbursztyka: This implements initial part of #7658. As mentioned there, I'd also like to rename Kconfig options to get rid of "APP_" there, and as we decided, use "config" instead of "settings" terminology. But such a change would affect almost each sample/test. I'm taking a some time off, so if you don't mind, would like this change first, and then work on Kconfig updates.

Ok makes sense.


ci(protocgen.sh): test yarn proto-gen upon updates to the ts-sdk dependencies or protocgen.sh.

Related: #150

This appears to be done/very old ticket
Protogen works fine