record file flushes

Description
If cyber_recorder records a lot of data a plain Linux system, the whole system may freeze. It helps to flush periodically.
According to https://ext4.wiki.kernel.org/index.php/Ext3_Data%3DOrdered_vs_Data%3DWriteback_mode

a careful application or library should always use fsync() at points where the application is at a stable commit point.

Without fsync(fd_), record_file_integration_test will fail. record_file_integration_test is not run normally because it may wear out the disk and it assumes that the system is not running anything else.
Test
sudo apt install valgrind
./apollo.sh citest_extended
ls bazel-bin/cyber/record/record_file_integration_test
# Assert that the binary is missing
valgrind --leak-check=full --show-leak-kinds=all bazel-bin/cyber/record/record_file_test
# Only errors from fastrtps
bazel test -c opt //cyber/record:record_file_integration_test
# Assert passes
valgrind --leak-check=full --show-leak-kinds=all bazel-bin/cyber/record/record_file_integration_test
# test fails, but only valgrind errors are from fastrtps

I'm analyzing this case — small message and High frequency. Will update later...

“fsync” is a synchronized operation, it is blocking other operations in record flush thread.
If “fsync” operation is added, only 1 to 2 million messages can be written in 1,000 sample times in your test case. The original code can write 6 to 8 million messages in 1,000 sample times in your test case.

OS will perform this operation by itself

The operating system seems to block other real time threads without the fsync. If you take a look at cyber/record/file/record_file_integration_test.cc, there is a thread that needs to run in real time. You can imagine this thread is the chassis send a CAN message at a 10ms period. This thread does not use the disk. When the disk is being written heavily, the system does not schedule the thread. The thread can take 100ms or more to run.
Please run
bazel test -c opt //cyber/record:record_file_integration_test

with and without this line https://github.com/ApolloAuto/apollo/pull/8395/files#diff-7a8b066d4d339903a00e855910bad719R159.

Please don't use fsync(2) and fdatasync(2) if we need to process data in parallel, no mater in ordered or writeback mode for ext3/4.  both system call only fire data flushing operation to disk(fdatasysnc(2) also update timestamp), but not really ensure file data/metadata is really written into the physical drive. some data may still be lost in case of system/filesystem crash to keep the consistent of filesystem.

Thanks @freeHackOfJeff for the additional context.
The fsync command is a workaround for not being able to schedule threads properly when writing large topics to disk. For example, writing camera and lidar data could cause timeouts in other parts of the system like the chassis module. Has anyone seen this behavior?

I removed the fsync call. It sounds like it is not right to do this in the user space.
The root cause to the problem that I'm experiencing may be system related. When I ran my benchmark on another Linux system, it worked fine. According to https://bugzilla.kernel.org/show_bug.cgi?id=111181, it may be related to Samusung SSD's and Nvidia GPUs.
If I find a better solution, I will post it here.

@baowanyu  Please review this ticket.

The original issue may have been due to a system issue. Upgrading to Ubuntu 18.04 helped out the scheduler, when writing to disk. Flush does help the system, but the record file sometimes becomes sluggish leading to gaps in the record file.
Since the focus is different, I created a new PR with a different name here: https://github.com/ApolloAuto/apollo/pull/9108.


Bgcode

Issue :- Add hover animation in superhero images

Add styles in :
:-

Add script right before closing  tag, and initialize AOS:
:-

Add data-aos="flip-left" attribute in the heroImage id in HTML File
:-

Add the data-aos attribute with the value "flip-left" to the image element in JS File:
:-

heroImageDiv.innerHTML = ${hero2} <img src="${hero.image.url}" height=400 width=300 class="zoom-effect" data-aos="flip-left"/>;

Now, you can define the CSS for the "zoom-effect" class to implement the zoom-in effect when hovering over the image. You can use the @keyframes rule to define the animation:
:-

.zoom-effect {
transition: transform 0.3s ease;
}
.zoom-effect:hover {
transform: scale(1.1); /* Adjust the scale factor as needed for the desired zoom effect */
}
/* Define the flip-left animation */
@keyframes flip-left {
0% {
transform: perspective(400px) rotateY(90deg);
opacity: 0;
}
100% {
transform: perspective(400px) rotateY(0deg);
opacity: 1;
}
}
/* Apply the flip-left animation to elements with data-aos="flip-left" */
[data-aos="flip-left"] {
animation: flip-left 0.5s ease;
}

Thank you for your invaluable contributions to our open-source project! 🚀 If you like our project, please consider to start ⭐ the repo.


Missing patterns for doxygen

Namely html/, latex/, CMakeDoxyfile.in, CMakeDoxygenDefaults.cmake

@mcandre please open a PR here and edit the Templates you wish to update or create new ones if necessary.


[Utils-Visualization] Check Font path for every situation

Check Font path for every situation

Fix ImageFont path to make it available for every situation(window/Mac/ubuntu)

work branch : utils-visualization_font_path

Upload .tff font file on docker and use it


lsp.tsserver conflicts with none-ls.sources.prettier

Plugin affected: none-ls, lsp
Nixpkgs channel: unstable
Home-manager version: 23.11-pre
Description
Using Prettier with none-ls while also enabling the tsserver LSP will override prettier and use the built-in formatter instead.
Config
lsp = {
  enable = true;
  servers.tsserver.enable = true;
};
none-lsp = {
  enable = true;
  formatting.prettier.enable = true;
};

Workaround
lsp = {
  enable = true;
  servers.tsserver = {
    enable = true;
    onAttach.function = "client.server_capabilities.documentFormattingProvider = false";
  };
};
none-lsp = {
  enable = true;
  formatting.prettier.enable = true;
};

Hey ! Thank you for reporting this.
You have indeed identified the correct fix.
This is what you are supposed to do as per mentioned in the none-ls wiki.
Whether we should do this automatically in nixvim is a good question:

Pro: It makes no sense do enable prettier through none-ls while still wanting to use the LSP provided formatting. This would remove this responsibility from the user.
Cons: Stacking this kind of "automatic behaviors" in our code base might not be very sustainable. Also, users don't expect us to do "things in the background".

Honestly, applying this patch automatically does not bother me. What do you think @traxys ?

Using this repo has been the best experience configuring neovim for me because a lot of sane defaults are already applied and most things just work with enable = true;. To me as a user it felt like good mixture of just a wrapper and some small patches/enhancements on top to make the config behave more like you'd expect.
I feel like the best way would be something like a disableTsServerFormatter that defaults to true. That way it's pretty clear that something is being done and making it very obvious how to get rid of it, while also providing default behaviour that has it work out of the box.
I do absolutely understand though if you want to avoid patching thing like this

Completed by #772

I've just realized that the issue might be more complicated than I thought and is a universal issue with null-ls formatters.
There's actually a whole section about conflicts with LSP servers here in the none-ls wiki. They specifically recommend against this workaround, and it doesn't seem like there's a super universal solution either. I've seen posts about prompts to select the formatter, which I certainly did not get, but I fixed auto formatting with their guide.
I don't know what the best solution would be, but I think the commit with the warning should probably be reverted, an addition to some docstring feels like a much more appropriate option, since you can't "patch" vim.lsp.buf.format().


More than Level 1?

Currently it is but only for Level 1
It would be useful in some cases to be able to create a character higher than 1st level... although that's not the focus of this module it would expand its use.
Option 1
Make level selection a thing that also affects which advancements are processed
Cons
Requires a different UX / UI to cater for multi-class
Option 2
Make it clear that this is for creating Level 1 characters only and that the level select is for preview purposes only
Option 3
Add a level up button to each class on the character sheet, which just finds the compendium item and drops it on the sheet again.
But then what about multi-classing? In which case there would need to be a different UX. Probably something like a dialog that asks which class to improve, with the option to add new. If new, then it opens AS again but linked to the current actor instead of to a new actor.

From ChobitzCrazy: (My preference is a button on the character sheet to level up, also it should detect that the character has enough XP for the level)


JAMES-3544 Add getUploadMetadata method for UploadRepository + add to UploadResolver

IMO not needed.
Why do you want to work specifically with uploads?
Why not other blobs?
Isn't BlobResolver doing the job?

I just want to fetch only blob metadata (blobId, contentType, size), No need content

If truely needed (which I doubt) I believe we could rather have a metadata description as part of the BlobResolver?

You are right, Should be better when use BlobResolvers, than use only one UploadResolver


Update zstd to 1.3.8

~Fix - #17374.~ (I need to test)
File thirdparty/zstd/1314.diff removed because it's already merged in zstd.

I guess we could keep the code behind #ifdef's and make it opt-in, so that people who may have a use case for it can enable it. Once the API is made stable upstream, we can remove the option and enable it for everyone.

@akien-mga ZSTD_p_compressionLevel was replaced by ZSTD_c_compressionLevel and is released in version 1.3.8. Then I didn't added any #ifdef's, ok?

Awesome, thanks! I'll try now to compile against system zstd 1.3.8 with those changes.

Yeah it doesn't fix #17374 yet:
core/io/compression.cpp: In static member function 'static int Compression::compress(uint8_t*, const uint8_t*, int, Compression::Mode)':
core/io/compression.cpp:84:33: error: 'ZSTD_c_compressionLevel' was not declared in this scope
    ZSTD_CCtx_setParameter(cctx, ZSTD_c_compressionLevel, zstd_level);
                                 ^~~~~~~~~~~~~~~~~~~~~~~
core/io/compression.cpp:84:33: note: suggested alternative: 'ZSTD_decompressStream'
    ZSTD_CCtx_setParameter(cctx, ZSTD_c_compressionLevel, zstd_level);
                                 ^~~~~~~~~~~~~~~~~~~~~~~
                                 ZSTD_decompressStream
core/io/compression.cpp:84:4: error: 'ZSTD_CCtx_setParameter' was not declared in this scope
    ZSTD_CCtx_setParameter(cctx, ZSTD_c_compressionLevel, zstd_level);
    ^~~~~~~~~~~~~~~~~~~~~~
core/io/compression.cpp:84:4: note: suggested alternative: 'ZSTD_CCtx_s'
    ZSTD_CCtx_setParameter(cctx, ZSTD_c_compressionLevel, zstd_level);
    ^~~~~~~~~~~~~~~~~~~~~~
    ZSTD_CCtx_s
core/io/compression.cpp:86:34: error: 'ZSTD_c_enableLongDistanceMatching' was not declared in this scope
     ZSTD_CCtx_setParameter(cctx, ZSTD_c_enableLongDistanceMatching, 1);
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core/io/compression.cpp:86:34: note: suggested alternative: 'zstd_long_distance_matching'
     ZSTD_CCtx_setParameter(cctx, ZSTD_c_enableLongDistanceMatching, 1);
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                                  zstd_long_distance_matching
core/io/compression.cpp:87:34: error: 'ZSTD_c_windowLog' was not declared in this scope
     ZSTD_CCtx_setParameter(cctx, ZSTD_c_windowLog, zstd_window_log_size);
                                  ^~~~~~~~~~~~~~~~
core/io/compression.cpp: In static member function 'static int Compression::decompress(uint8_t*, int, const uint8_t*, int, Compression::Mode)':
core/io/compression.cpp:178:37: error: 'ZSTD_DCtx_setMaxWindowSize' was not declared in this scope
    if (zstd_long_distance_matching) ZSTD_DCtx_setMaxWindowSize(dctx, (size_t)1 << zstd_window_log_size);
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
core/io/compression.cpp:178:37: note: suggested alternative: 'ZSTD_DStreamInSize'
    if (zstd_long_distance_matching) ZSTD_DCtx_setMaxWindowSize(dctx, (size_t)1 << zstd_window_log_size);
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
                                     ZSTD_DStreamInSize

The update is still good to take though :)

Thanks!

For the reference, since those symbols are on the way to be added to stable releases (probably by 1.3.9 or 1.4.0 I guess?), we probably don't need to bother fiing #17374 ourselves, upstream will do it for us.
The main incentive was for distros to be able to unbundle zstd, but so far they seem fine with it being bundled. If a distro maintainer proposes a patch to allow unbundling, I'm open to merging it, though it would mean that distro and official builds would have slightly different behaviour on compression.

Will not cherry-pick for 3.0.x, there is no clear gain and we should avoid changes that may impact its stability.


Add inline reducer

.ireduce[acc, a](initialState, [finalizer]):
   max(acc, a)

[acc=initial, a] ?


Project Status

There's a large backlog of issues, multiple PRs and no updates for 6 months.
I've also seen some concerning comments in this regard: https://github.com/AppMetrics/AppMetrics/issues/716#issuecomment-958762875
Is the maintainer still around, in which case does he need some help, or do we need to fork?

or do we need to fork?

I think this can be considered the answer. I couldn't find the author's contacts for clarification, so..

I'd suggest there is hope since there was a Release in April 2021...and there are a number of recent beta releases on Nuget
https://www.nuget.org/packages/App.Metrics/

I think we really need a fork :(


Details (optional)
Optional details

@cnu1812 are you interested in working this? Also can you provide an example where you see dataops being used?

I am working on other issue currently. And I would like to take up after that. Meanwhile if anyone interested can do this.

@cnu1812 can you please open a new issue and fill the template correctly, this would help us with further proceeding :) thanks


Add RESP3 support

A new redis client that supports resp3: https://github.com/camarojs/redis

A new redis client that supports resp3: https://github.com/camarojs/redis

Is anyone working on this? It's kind of a beefy feature for a first-time committer to the project, so if anyone on the existing contributor list is actively engaged in this and I can help, lemme know.

We are wanting to use the new CLIENT TRACKING (server assisted client side caching) and RESP3 support would be awesome. Sure, there's a workaround, but it's ugly and is prone to the race condition spelled out in the Redis docs: https://redis.io/topics/client-side-caching

After talking with guys in Redis Labs, I believe @leibale or others are working on a Node.js parser for RESP3. Once the work is in the public beta stage or done, ioredis will integrate with that.

any update?


[BUG]: Gazebo localizer crashes due to naming collision

Issue Description
The Localizer base class implements the method convert_pose_to_transform. Within this method, a transform named tf is instantiated. This conflicts with the tf_transformations import which is assigned the alias tf.
Steps to Reproduce
Launch the system with the Gazebo localizer
Expected Behavior
The Gazebo localizer shouldn't crash!
Error Message
[gazebo_localizer-22] Traceback (most recent call last):
[gazebo_localizer-22]   File "/home/angler/ws_angler/install/blue_localization/lib/blue_localization/gazebo_localizer", line 33, in <module>
[gazebo_localizer-22]     sys.exit(load_entry_point('blue-localization==0.0.1', 'console_scripts', 'gazebo_localizer')())
[gazebo_localizer-22]   File "/home/angler/ws_angler/install/blue_localization/lib/blue_localization/gazebo_localizer", line 25, in importlib_load_entry_point
[gazebo_localizer-22]     return next(matches).load()
[gazebo_localizer-22]   File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 171, in load
[gazebo_localizer-22]     module = import_module(match.group('module'))
[gazebo_localizer-22]   File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
[gazebo_localizer-22]     return _bootstrap._gcd_import(name[level:], package, level)
[gazebo_localizer-22]   File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
[gazebo_localizer-22]   File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
[gazebo_localizer-22]   File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
[gazebo_localizer-22]   File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
[gazebo_localizer-22]   File "<frozen importlib._bootstrap_external>", line 883, in exec_module
[gazebo_localizer-22]   File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
[gazebo_localizer-22]   File "/home/angler/ws_angler/install/blue_localization/lib/python3.10/site-packages/blue_localization/localizer.py", line 28, in <module>
[gazebo_localizer-22]     import tf_transformations as tf
[gazebo_localizer-22]   File "/opt/ros/rolling/lib/python3.10/site-packages/tf_transformations/__init__.py", line 47, in <module>
[gazebo_localizer-22]     import transforms3d
[gazebo_localizer-22]   File "/usr/lib/python3/dist-packages/transforms3d/__init__.py", line 10, in <module>
[gazebo_localizer-22]     from . import quaternions
[gazebo_localizer-22]   File "/usr/lib/python3/dist-packages/transforms3d/quaternions.py", line 26, in <module>
[gazebo_localizer-22]     _MAX_FLOAT = np.maximum_sctype(np.float)
[gazebo_localizer-22]   File "/usr/local/lib/python3.10/dist-packages/numpy/__init__.py", line 313, in __getattr__
[gazebo_localizer-22]     raise AttributeError(__former_attrs__[attr])
[gazebo_localizer-22] AttributeError: module 'numpy' has no attribute 'float'.
[gazebo_localizer-22] `np.float` was a deprecated alias for the builtin `float`. To avoid this error in existing code, use `float` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use `np.float64` here.
[gazebo_localizer-22] The aliases was originally deprecated in NumPy 1.20; for more details and guidance see the original release note at:
[gazebo_localizer-22]     https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations. Did you mean: 'cfloat'?

Runtime Environment
Dev container on my desktop
Additional Context
No response

So I was super wrong about this (it was a bug but not the bug I'm trying to squash). Basically, there is a dependency issue with tf_transformations. I'm not quite sure why I opted to use that library in the first place instead of something like scipy. Going to reopen this and remove the dependency in favor of scipy.


make deposit_count a uint64

@daejunpark advised against this, postponing.

What's the idea behind postponing?
Wouldn't it be better to just merge it into a branch wanted_but_no_recommended_by_RV?

I guess the idea is to revisit this once the initial run of FV is passed, so that we can progress incrementally but steadily.
BTW, just to be clear, my suggestion was based on the extra complexity when accessing the value in the storage by this change (mentioned by @chriseth).

I guess the idea is to revisit this once the initial run of FV is passed, so that we can progress incrementally but steadily.

@daejunpark @MrChico What is the verdict about this now?

I don't feel like the value of this change is high enough to warrant a bytecode change at this point

I agree with @MrChico.

Can we close this then?

Ya


Code Acceptance Criteria

Application uses at least two server-side APIs.
Application uses client-side storage to store persistent data.
Application doesn't use JS alerts, prompts, or confirms (uses modals instead).
Application uses a CSS framework other than Bootstrap.
Application is interactive (accepts and responds to user input).

Acceptance Criteria met


UNDERTOW-1701: Fix race condition in GracefulShutdownHandler

Thread T1 calls decrementRequests. Shutdown is false, so this thread will follow the 'else' path in preparation for decrementAndGet
Thread T2 calls shutdown. Increments from 1 to 2, sets shutdown=true, and calls decrementRequests where decrementAndGet results in 1
Thread T1 completes the decrementRequests invocation reducing the active request count to zero in the else path without calling shutdownComplete.

This is ok to test


Add files via upload

@ov-ah Thank you for your patience while waiting for a review and processing your request. Pull request merged. Please start applying for JetBrains educational subscription at https://www.jetbrains.com/shop/eform/students in an hour, to allow the changes to propagate through JetBrains systems.


Added "to_f" and "to_i" methods to Time and TimeSpan

...for Ruby compatibility.

Thanks!
As @ysbaddaden says, I would make TimesSpan#to_f return total_seconds and TimeSpan#to_i to return total_seconds.to_i, or something like that.
I think Time#to_f is good.
But, please, can you include some specs in your pull request? It helps us review the code more quickly, and we can also be sure it works because it gets run on travis.

Hah, whoops! Sorry about that. I'll fix it up.

Okay, fixed!

Thanks!!

When will this commit be available on a release...?
I see that it's on the master but not in the latest release

@blocknotes It's there on Time::Span. On Time use epoch and epoch_f

Ok, thank you @asterite


Problem when navbar is collapsed

In dropdown menus within a navbar that is collapsed for which data-hover=dropdown, when I click on the dropdown menu it drops down ok, but then when I move cursor over the "dropdowned" menu, it disappears within the data-delay timeout. I think what is happening is that it detects that the cursor has moved out of the triggering dropdown (and when the cursor is over the dropdowned menu it is also happens to hover over another "top level" menu item), so it collapses its child. But it should not collapse it in this case, because the cursor is over a child. Happens whether or not data-close-others="false"

Sorry, was a little imprecise. By "within a navbar that is collapsed", I meant: Within a navbar that has been opened as a "stacked list as result of clicking on the button that has replaced the navbar because the window is narrow enough to trigger the navbar collapse. Ex. code:

Test case

Home
Item 1
Item 2
Item 3

Item 4

Item 5

Item 6

Item 7
Item 8
Item 9

Update: Note that this is only a problem for non-touch screens where hover is possible, but browser window is nevertheless narrow enough to trigger a collapse of the navbar.
I fixed it by "wrapping" lines 61, 62, and 63 with a test for non-visibility of the navbar-toggle. Thus, if the navbar-toggle IS visible (navbar is collapsed), the hover event will NOT close the menu. I am a novice Jquery programmer and do not thoroughly understand all the code of this plugin, so I'm not sure this is 100% correct, but testing seems to show it works without causing other problems. Here are the affected lines of code:
if (!($this.parents(".navbar").find(".navbar-toggle").is(":visible"))) { // AES59
                	$this.attr('aria-expanded', 'false');
                	$parent.removeClass('open');
                	$this.trigger(hideEvent);
                } // AES59

I've had the same problem. I have also fixed it on my side by checking if .navbar-toggle is :visible. If it is, I don't activate dropdownHover at all.
To handle cases such as someone resizing their browser it would be nice to have some way to disable dropdownHover again once it has been enabled, such as .dropdownHover("destroy")

me too, and since an image (ops... a code!) is worth a thousand words, here is a fiddle that shows the problem: http://www.codeply.com/go/GQsnKuiNXB
Select the smartphone viewport width (smartphone icon bottom right), open the dropdown menu and then go to "About" or "Contact" item: the dropdown disappears


Expose other Redis SET options

The SET command has various options, most of which aren't available or would be but types forbid it. Specifically I need the KEEPTTL option but it's unavailable. This can probably be fixed by adding these options to the SetOption enum. For future-proofing, it might be nice to make the mode parameter a SetOption | string type.
It would also be nice if you could provide an array of options, so you can mix and match when necessary.

I hesitate having the mode option also support strings, since that would make the user experience a little messy - since it's just appended to the command, it could literally be used for anything beyond options. Adding the KEEPTTL option and support for an array of options is easy enough for now though.
Here's to a Great [Day of the Week],
Uncle

Thank you uncle 🙏

320b3b2 :)


Create fritzing schematic

http://fritzing.org/home/

We have custom PCB now. Friytizing Arduino prototype schematic is pointless.


Fix cache loading error for terrain tiles served

This PR addresses the "TypeError: Cannot read properties of undefined" error that occurs when attempting to load terrain tiles from a webserver with Cesium. The changes in terrain_request.py include adding error handling and logging, ensuring all required tiles (including level 0) are generated, and verifying that terrain_generator.generate correctly handles all tiles. These updates improve the robustness of terrain tile generation and loading, allowing the tiles to be properly served and loaded by Cesium.

Is this a bot account that tries to resolve open issues on github?

A TerrainRequest is never created for zoom 0
If it was creating a TerrainRequest it now would add a duplicate wanted file for the main requested tile
Logging is already configured somewhere else and the level shouldn't be set from code
The code introduces an error "File not found for key" which is not an error..


Open Github Issue Tracker

For some reason, maybe because the repo was recently moved to the pyflakes organization, issues aren't available on the repo.
I have a genuine issue to report and can't find where to do it!
Issues can be activated on the repo settings:

N.B. the issue is this, which occurs on 1.2.0 but not 1.1.0:
  File "/Users/chainz/.virtualenvs/yplan/lib/python2.7/site-packages/pyflakes/checker.py", line 1150, in IMPORTFROM
    node.module, alias.name)
  File "/Users/chainz/.virtualenvs/yplan/lib/python2.7/site-packages/pyflakes/checker.py", line 198, in __init__
    full_name = module + '.' + self.real_name
TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'

(I think #61 fixes my issue but there's no full issue report for it so can't be sure)

Issues are currently tracked on https://launchpad.net/pyflakes , though there have been several discussions about moving to github issues.
And yes, your bug (and one other) has been raised there; see the list at https://bugs.launchpad.net/pyflakes

@adamchainz https://bugs.launchpad.net/pyflakes is the correct place to file bugs.

Sorry I missed that, I scanned the whole of the README on Github and all I saw was how to open a PR under "Contributing", adding a link there would help.

Feel free to open a pull request to add it.


Fix lambda special case; implement annotations

Pull Request Description

-> lambda operator isn't bound by nospace groups; see new test case.
Implemented annotations.

Important Notes
Checklist
Please include the following checklist in your PR:

[x] The documentation has been updated if necessary.
[x] All code conforms to the
Scala,
Java,
and
Rust
style guides.
All code has been tested:

[x] Unit tests have been written where possible.
[x] If GUI codebase was changed: Enso GUI was tested when built using BOTH
./run ide build and ./run ide watch.

[ci no changelog needed]

I managed to verify that the new Tree structure gives me enough information to convert the lambda+block case into IR:
$ git diff
diff --git a/engine/runtime/src/main/java/org/enso/compiler/TreeToIr.java b/engine/runtime/src/main/java/org/enso/compiler/TreeToIr.java
index 495d63a2c..7a9aeef3c 100644
--- a/engine/runtime/src/main/java/org/enso/compiler/TreeToIr.java
+++ b/engine/runtime/src/main/java/org/enso/compiler/TreeToIr.java
@@ -609,29 +609,59 @@ final class TreeToIr {
                   arg = susApp.getRhs();
                   isSuspended = true;
               }
-              IR.Name name = switch (arg) {
-                case Tree.Wildcard wild -> new IR$Name$Blank(getIdentifiedLocation(wild.getToken()), meta(), diag());
-                case Tree.Ident id -> {
-                  IR.Expression identifier = translateIdent(id, false);
-                  yield switch (identifier) {
-                    case IR.Name name_ -> name_;
-                    default -> throw new UnhandledEntity(identifier, "translateExpression");
+              if (arg instanceof Tree.App opr) {
+                var more = cons(opr.getArg(), nil());
+                  var fn = translateExpression(opr.getFunc(), more, insideTypeSignature, false);
+                  var body = translateExpression(app.getRhs(), false);
+                  yield switch (fn) {
+                    case IR$Application$Prefix pref -> {
+                      var lastArg = pref.arguments().last();
+                      yield switch (lastArg.value()) {
+                        case IR.Name lastArgName -> {
+                          var lambdaArg = new IR$DefinitionArgument$Specified(lastArgName, Option.empty(), Option.empty(), false, lastArg.location(), meta(), diag());
+                          var lambda = new IR$Function$Lambda(cons(lambdaArg, nil()), body, getIdentifiedLocation(opr), true, meta(), diag());
+                          var lambdaSpecified = new IR$CallArgument$Specified(Option.empty(), lambda, lambda.location(), meta(), diag());
+                          var newArgs = (List<IR.CallArgument>) pref.arguments().take(pref.arguments().size() - 1).appended(lambdaSpecified);
+                          yield pref.copy(
+                          pref.copy$default$1(),
+                          newArgs,
+                          pref.copy$default$3(),
+                          pref.copy$default$4(),
+                          pref.copy$default$5(),
+                          pref.copy$default$6(),
+                          pref.copy$default$7()
+                          );
+                        }
+                        default -> fn;
+                      };
+                    }
+                    default -> fn;
                   };
-                }
-                default -> throw new UnhandledEntity(arg, "translateExpressiontranslateArgumentDefinition");
-              };
-              var arg_ = new IR$DefinitionArgument$Specified(
-                      name,
-                      Option.empty(),
-                      Option.empty(),
-                      isSuspended,
-                      getIdentifiedLocation(arg),
-                      meta(),
-                      diag()
-              );
-              List<IR.DefinitionArgument> args = cons(arg_, nil());
-              var body = translateExpression(app.getRhs(), false);
-              yield new IR$Function$Lambda(args, body, getIdentifiedLocation(tree), true, meta(), diag());
+              } else {
+                IR.Name name = switch (arg) {
+                  case Tree.Wildcard wild -> new IR$Name$Blank(getIdentifiedLocation(wild.getToken()), meta(), diag());
+                  case Tree.Ident id -> {
+                    IR.Expression identifier = translateIdent(id, false);
+                    yield switch (identifier) {
+                      case IR.Name name_ -> name_;
+                      default -> throw new UnhandledEntity(identifier, "translateExpression");
+                    };
+                  }
+                  default -> throw new UnhandledEntity(arg, "translateExpressiontranslateArgumentDefinition");
+                };
+                var arg_ = new IR$DefinitionArgument$Specified(
+                        name,
+                        Option.empty(),
+                        Option.empty(),
+                        isSuspended,
+                        getIdentifiedLocation(arg),
+                        meta(),
+                        diag()
+                );
+                List<IR.DefinitionArgument> args = cons(arg_, nil());
+                var body = translateExpression(app.getRhs(), false);
+                yield new IR$Function$Lambda(args, body, getIdentifiedLocation(tree), true, meta(), diag());
+              }
             }
           }
           default -> {
diff --git a/engine/runtime/src/test/java/org/enso/compiler/EnsoCompilerTest.java b/engine/runtime/src/test/java/org/enso/compiler/EnsoCompilerTest.java
index 759b9b4a2..4862049f0 100644
--- a/engine/runtime/src/test/java/org/enso/compiler/EnsoCompilerTest.java
+++ b/engine/runtime/src/test/java/org/enso/compiler/EnsoCompilerTest.java
@@ -240,6 +240,14 @@ public class EnsoCompilerTest {
     """);
   }

+  @Test
+  public void testMappedInterpolations() throws Exception {
+    parseTest("""
+    mapped = interpolations.map e->
+        e.first
+    """);
+  }
+
   @Test
   public void testMultiParameterFunction() throws Exception {
     parseTest("""

The amount of processing on the Java side seems a bit too  big, however. The code constructs a function and then it replaces its last argument with a lambda - e.g. the tree is still not 1:1 to IR. Can't we just get Tree.Lambda from the Rust parser with all the information filled in ;-?
@kazcw, if you think my diff is acceptable for old lambda syntax, please include it in this PR. Thank you. Feel free to modify it, if it is not fully correct.

There is a failure in testLambda which means that something has changed in:
f = map _->alphabet

I see OprApp with null left hand side for ->. That needs to be resolved somehow.

Ah. I thought I had a test case like that in Rust. Adding one now. Cases like this that parse as App are broken. Lambda handling needs to be even more special to handle this case (that works in develop) and the new case (that works in this PR). I'll remove the lambda changes from this PR so we can merge the annotations implementation, and I'll revisit lambdas on Monday.

The amount of processing on the Java side seems a bit too  big, however. The code constructs a function and then it replaces its last argument with a lambda - e.g. the tree is still not 1:1 to IR. Can't we just get Tree.Lambda from the Rust parser with all the information filled in ;-?

Almost all of IR is a syntax tree--but not all of it. This is one of the few places where IR actually contains something higher-level than the syntax: the language defines lambdas as single-argument, but IR semantically analyzes them and uncurries them. That is a logical way to represent lambdas for the compiler, but it is not the Enso syntax for lambdas. So I think in this case, it is appropriate for mapping from Tree to IR not to be completely trivial. Does that make sense?

I'll remove the lambda changes from this PR so we can merge the annotations implementation,
and I'll revisit lambdas on Monday.

Almost all of IR is a syntax tree--but not all of it. ...
So I think in this case, it is appropriate for mapping from Tree to IR to involve a little analysis. Does that make sense?

It does. Thanks for the explanation.


Interactive Window (python) history only captures from input box, not from e.g, Run Selection in Interactive Window

Applies To

[ ] Notebooks (.ipynb files)
[X] Interactive Window and/or Cell Scripts (.py files with #%% markers)

What happened?
When scrolling through history using the up and down arrows, only inputs that were inputted using the input box of the interactive window are shown. I would appreciate that code that was entered using "Run Selection/Line in Interactive Window" (or any other way of copying code from Editor into the Interactive Window) would also be part of the history. This was suggested in #8658 but the issue was closed. Is this a bug or intentional?
Also, the ability to alter run cell blocks as with Jupiter in a browser would be helpful.
VS Code Version
1.71.2 (Universal)
Jupyter Extension Version
v2022.8.1002431955
Jupyter logs
none

Coding Language and Runtime Version
Python 3.10.6 and IPython 7.26.0
Language Extension Version (if applicable)
v2022.14.0
Anaconda Version (if applicable)
No response
Running Jupyter locally or remotely?
Local

I think it's actually covered by https://github.com/microsoft/vscode/issues/129081 (which was also closed) since it needs to be implemented in core.

I think it's actually covered by microsoft/vscode#129081 (which was also closed) since it needs to be implemented in core.

Yes that’s the exact same request. Didn’t find it myself so thanks for pointing me there. Hope they work on it in core to improve usability!


[DOCFIX]Update Configuring-Alluxio-with-OSS.md of the Chinese version

Can one of the admins verify this patch?

@granttoyu Thanks very much for your translation. I have left a minor comment. The other LGTM

Jenkins, ok to test

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/13186/
Test PASSed.

LGTM thanks!


Set Background of Page without using body?

I have a few different pages that I would like to have a different background image on. For the main page I was able to change it by applying css changes to sb-admin.css directly to the body tag. However, this then causes the same background to be used across all pages. I have tried adding a wrapper onto my other pages to add a new background image with no success and using the css from other component pages (Typescript project) to override the body with new styling but still no success.
Any suggestions would be greatly appreciated!

Was able to apply background per page by wrapping the content in a div and applying the following css.
.customBackground {
    display:block;
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background: url("assets/img/bg.jpg") no-repeat center center fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}


Link unstable builds in README

Unstable builds were hard to find, as they were not linked in the
docs. By adding them to the README, we make sure people are aware that
they do not need to run their own builds if they want to run bleeding
edge.

This pull request is now managed with CodeReviewHub. Refresh.


footer tag closes improperly

Hello, and thank you for this! I just noticed the footer tag seems to be opened twice, but no closing tag is present. Nitpicky, I know, but would it be possible to fix this?

sorry, should have checked your pull issues: you seem to have already noticed!

Indeed; merged that in, along with another fix in the footer coming up shortly.


Added off heap memory to calculation for YuniKorn gang scheduling

🛑 Important:
Please open an issue to discuss significant work before you start. We appreciate your contributions and don't want your efforts to go to waste!
For guidelines on how to contribute, please review the CONTRIBUTING.md document.
Purpose of this PR
add potential off heap memory into calculations of gang scheduling for yunikorn. As per spark configuration page,
https://spark.apache.org/docs/latest/configuration.html

Proposed changes:

added a new function for adding potential off heap memory like pyspark memory
fixed a typo in executorPysparkMemoryBytes

Change Category
Indicate the type of change by marking the applicable boxes:

[x] Bugfix (non-breaking change which fixes an issue)
[x] Feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that could affect existing functionality)
[ ] Documentation update

Rationale

Checklist
Before submitting your PR, please review the following:

[x] I have conducted a self-review of my own code.
[ ] I have updated documentation accordingly.
[x] I have added tests that prove my changes are effective or that my feature works.
[x] Existing unit tests pass locally with my changes.

Additional Notes

@jacobsalway


Cyclic sort in C++

Description 📜
In this, we will get a brief idea about the Cyclic Sort in C++
Fixes # 2431

Type of change 📝

[x] Doc#umentation (Content Creation in the form of codes or tutorials)

Domain of Contribution 📊

[x] C/#CPP

Checklist ✅

[x] I follow Contributing Guidelines & Code of conduct of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I'm GWOC'21 contributor

Screenshots / Gif (Optional) 📸

@nimisha-yadav  review this one, please!

@nimisha-yadav review this one, please!

Hi @aniket-24, I'm supervising DSA. Your file can only be reviewed and merged by CPP supervisors, so you should tag them.

@Suvraneel review this one, please!

@aniket-24  Resolved merge conflicts...
First put files in appropriate directories :
C_CPP->Algo folder -> sorting algos
And add line to Sorting/readme.md
Then mentors will review your PR

Closing the PR !!


"No test is available in .." when targeting net451

When I create a new test project with dotnet new xunit, add net451 target framework and update the packages to the latest versions I get "No test is available in" error:
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFrameworks>netcoreapp1.0;net451</TargetFrameworks>
    <RuntimeIdentifier>win7-x86</RuntimeIdentifier>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.0.0-preview-20170217-05" />
    <PackageReference Include="xunit" Version="2.2.0" />
    <PackageReference Include="xunit.runner.visualstudio" Version="2.2.0" />
  </ItemGroup>
</Project>

C:\tmp>dotnet restore
C:\tmp>dotnet test tmp.csproj -f net451 -c Release
Build started, please wait...
Build completed.

Test run for C:\tmp\bin\Release\net451\tmp.exe(.NETFramework,Version=v4.5.1)
Microsoft (R) Test Execution Command Line Tool Version <IP_ADDRESS>
Copyright (c) Microsoft Corporation.  All rights reserved.

Starting test execution, please wait...
Warning: No test is available in C:\tmp\bin\Release\net451\tmp.exe. Make sure that installed test discoverers & executors, platform & framework version settings are appropriate and try again.

When I downgrade the packages things work fine
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.0.0-preview-20170123-02" />
<PackageReference Include="xunit" Version="2.2.0-beta5-build3474" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.2.0-beta5-build1225" />

It seems to be similar to #523. the following workaround does not help:
<PropertyGroup>
    <DebugType Condition="'$(TargetFramework)' != '' AND !$(TargetFramework.StartsWith('netcoreapp'))">Full</DebugType>
</PropertyGroup>

Looks like there are packaging change in xunit.
xunit.runner.visualstudio > 2.2.0-beta5-build1225 moved from net45 to net452.
  <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.0.0-preview-20170217-05" />  <PackageReference Include="xunit" Version="2.2.0" />  <PackageReference Include="xunit.runner.visualstudio" Version="2.2.0" />
with above packages I am seeing following message, In which we can notice
xunit.execution.desktop.dll skipping log.
If you are not seeing skipping message, can please provide more info about your platform.
Starting test execution, please wait...
[xUnit.net 00:00:00.1805285] Skipping: net45 (Could not find any of the following assemblies: xunit.execution.desktop.dll)
No test is available in C:\Users\samadala\tmp\net45\bin\Debug\net451\net45.exe. Make sure that installed test discoverers & executors, platform & framework version settings are appropriate and try again.

FYI, <OutputType>Exe</OutputType>    <RuntimeIdentifier>win7-x86</RuntimeIdentifier> properties not required with latest templates.

This issue was moved to xunit/xunit#1130


Compilation issue with TDM-GCC

I am having the following error when compiling NzNoise module with TDM-GCC 5.1.0
http://tdm-gcc.tdragon.net/
||=== Build: DebugDLL in NazaraCore (compiler: GNU GCC Compiler) ===|
||=== Build: DebugDLL in NazaraNoise (compiler: GNU GCC Compiler) ===|
..\..\include\Nazara\Core\Debug\NewRedefinition.hpp|24|error: invalid pure specifier (only '= 0' is allowed) before '::' token|
..\..\include\Nazara\Core\Debug\NewRedefinition.hpp|24|error: invalid pure specifier (only '= 0' is allowed) before '::' token|
..\..\include\Nazara\Core\Debug\NewRedefinition.hpp|24|error: invalid pure specifier (only '= 0' is allowed) before '::' token|
..\..\include\Nazara\Core\Debug\NewRedefinition.hpp|24|error: invalid pure specifier (only '= 0' is allowed) before '::' token|
..\..\include\Nazara\Core\Debug\NewRedefinition.hpp|24|error: invalid pure specifier (only '= 0' is allowed) before '::' token|
..\..\include\Nazara\Core\Debug\NewRedefinition.hpp|24|error: invalid pure specifier (only '= 0' is allowed) before '::' token|
..\..\include\Nazara\Core\Debug\NewRedefinition.hpp|24|error: invalid pure specifier (only '= 0' is allowed) before '::' token|
..\..\include\Nazara\Core\Debug\NewRedefinition.hpp|24|error: invalid pure specifier (only '= 0' is allowed) before '::' token|
..\..\include\Nazara\Core\Debug\NewRedefinition.hpp|24|error: invalid pure specifier (only '= 0' is allowed) before '::' token|
..\..\include\Nazara\Core\Debug\NewRedefinition.hpp|24|error: invalid pure specifier (only '= 0' is allowed) before '::' token|
..\..\include\Nazara\Core\Debug\NewRedefinition.hpp|24|error: invalid pure specifier (only '= 0' is allowed) before '::' token|
..\..\include\Nazara\Core\Debug\NewRedefinition.hpp|24|error: invalid pure specifier (only '= 0' is allowed) before '::' token|
||=== Build failed: 12 error(s), 0 warning(s) (1 minute(s), 3 second(s)) ===|

Do I need to update some stuff in the NzNoise module ?

The only times I had this bug before was when I included Debug.hpp before some header
#include <Nazara/Module/Debug.hpp> MUST be the last header to be included.
Also, don't forget to include DebugOff.hpp if used in an inline file.

You were correct, the Debug.hpp file was not the last to be included in Worley2D.cpp
Thanks


Implement support for Gitea

This is the PR to track the development of support for Gitea.
Description

It adds support specifically for Gitea by implementing GiteaProvider (an IVcsProvider descendant) but also expands the main code by adding capabilities to choose between and configure custom providers.
Related Issue

Issue #252
Motivation and Context

See linked issue
How Has This Been Tested?

It's currently manually tested against https://try.gitea.io which is a free and publicly available sandbox instance of Gitea.
Screenshots (if appropriate):
Checklist:

[ ] My code follows the code style of this project.
[x] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

The client API is generated using the latest official API schema
The tool I've used is openapi-generator and the resulting code is in a separate repo which is currently locally referenced in the project.
The plan is to fix all the issues in the client API (the generator is far from being perfect) and when it's done (or at least good enough for use with GRM) publish it on NuGet and replace all the references to the public package.

@belidzs having the IVcsProvider is still likely to be needed.  @akordowski has expressed an interest in adding DI to the project for other reason, and we are likely going to need that interface to allow this to happen.  For what I think you want to do, I would suggest both an interface, and an abstract base class (with virtual methods).  That way, we can provide default implementations of the internal methods, but which can be overridden when required.
Does that make sense?
Would be good to get some thoughts from @AdmiringWorm and @akordowski here.

@gep13 you're right it makes sense to use interfaces for that. I've recently started using DI in .NET Core and I really love the concept.
I've already started extracting some common stuff into the abstract class, however I have a feeling that probably I should use AutoMapper and pass complex model objects to functions instead of raw properties (e.g. a Model.Issue instead of index), but I'm not sure which one is the better solution.
Can you take a look at a6447c5 and confirm that this is the direction you had in mind regarding the inheritance?

I was more thinking along the lines of:
public class GiteaProvider : VcsProviderBase, IVcsProvider
And then only having the overrideable methods in the VcsProviderBase class.

Wouldn't that be redundant? VcsProviderBase already has to inherit from the interface since it provides a default implementation of CreateLabels()

VcsProviderBase doesn't need to inherit from IVcsProvider.  The base class will only contain the methods that were private in the GitHubVcsProvider, with the default implementation, that can then be overridden if/when required.

@belidzs having the IVcsProvider is still likely to be needed. @akordowski has expressed an interest in adding DI to the project for other reason, and we are likely going to need that interface to allow this to happen.

We don't need to have an interface even when implementing DI. A abstract class would be just as valid instead of an interface. I don't care either way if there is an interface or an abstract base class that is being used.

@belidzs I'm currently at the implementaion of the DI. I wouldn't put much effort into the VCsProvider before we have a stable and functioning DI implementaion. So you would avoid to fix the merge conflicts later.

@akordowski thanks for the heads up, I wasn't aware that there was anything else going on so I have already done some heavy refactoring on the GitHubProvider class. I hope I'll be able to escape from the merge hell after you've finished.
Can you let me know if you're done with GitHubProvider and IVcsProvider?

@belidzs I will publish a draft PR the comming days so we can discuss the next step. I  will inform you then.

Cheers @akordowski

Is it safe to start working on this again?

Actually, yes. There are some pending PRs so at the end there might be some merge conflicts. But the refactorings for DI are already merged into the develop branch.

Any updates on this?

Sorry, but no as I don't use GitReleaseManager anymore


Scan repository - add log with all the results

[x] All tests passed. If this feature is not already covered by the tests, I added new tests.
[x] This pull request is on the dev branch.
[x] I used gofmt for formatting the code before submitting the pull request.

depends on: https://github.com/jfrog/jfrog-cli-core/pull/1047

Now that we are detecting more than dependencies vulnerabilities and can fix some of them.
We can show those extra scan results (IAC, SAST, CA) with our create-fix-pull-requests command.
For now, only Github has API to report those results.
This PR adds a log to the action to print similar results as printed with our JFrog CLI audit command results with table format.

Secrets scan results are omitted from the output.
Full results are not written as JSON format.

.
.
.

Can this feature be off by default?


AutocompleteItem's onPress event is not working

NextUI Version
2.2.10
Describe the bug
I recently migrated my project from Vite to NextJS. The migration did not succeed at the first go, and therefore I had to start a new NextJS project from scratch and manually copy paste files into appropriate folders by myself. While doing this I believe I've run into an issue with the AutocompleteItem's onPress event function. Even though the UI remains the same as it was, pressing a specific AutocompleteItem doesn't call its associated onPress function. I've tried copy pasting the previous code (which is working correctly) into my new NextJS project but that doesn't seem to be able to fix the issue.
Your Example Website or App
No response
Steps to Reproduce the Bug or Issue
I am not sure how to tell you guys how you can reproduce my specific code. I'm sorry but I'm a bit of a noob.
Expected behavior

Screenshots or Videos
No response
Operating System Version
Windows
Browser
Chrome

@Vardaan-Grover I couldn't reproduce the issue on the latest version. Please upgrade it. Feel free to reopen if you still got an issue.


StatusCode=Unknown, Detail="Stream removed" for core-wrapping languages receiving padded data

running new tests in https://github.com/grpc/grpc/pull/9776, it looks like the core-wrapping languages all fail fast with unkown when receiving padded data frames.
The new test here is a server that implements interop UnaryCall, and existing interop clients call LargeUnary against it. It sends its response across a series of small, padded data frames.
If these clients call LargeUnary against the same server that's only not using padding, then call completes ok.
To repro from that pr:

tools/run_tests/run_interop_tests.py -l c++ --use_docker --http2_edge_server_interop --insecure -j 1

or manually:
install patched hyper-h2 python package:
git clone --recursive https://github.com/python-hyper/hyper-h2.git hyper-h2
cd hyper-h2 && git fetch origin pull/468/head:pull_468 && git checkout pull_468
python setup.py sdist
cd dist && pip install h2-2.6.0dev0.tar.gz

run server with
python test/http2_test/http2_test_server.py
run client with
bins/opt/interop_client \
  --server_host=localhost \
  --server_port=8080 \
  --use_tls=false \
  --test_case=large_unary

To update, that test is checked in now. But for now core-wrapping languages don't run it.
To repro manually:
Run the server:
python http2_test_server.py
WARNING    2017-03-27 16:41:40,630 http2_test_server:114 | serving on port 8080 : data_frame_padding
WARNING    2017-03-27 16:41:40,630 http2_test_server:114 | serving on port 8081 : goaway
WARNING    2017-03-27 16:41:40,630 http2_test_server:114 | serving on port 8082 : max_streams
WARNING    2017-03-27 16:41:40,630 http2_test_server:114 | serving on port 8083 : no_df_padding_sanity_test
WARNING    2017-03-27 16:41:40,630 http2_test_server:114 | serving on port 8084 : ping
WARNING    2017-03-27 16:41:40,630 http2_test_server:114 | serving on port 8085 : rst_after_data
WARNING    2017-03-27 16:41:40,631 http2_test_server:114 | serving on port 8086 : rst_after_header
WARNING    2017-03-27 16:41:40,631 http2_test_server:114 | serving on port 8087 : rst_during_data

Run the client against server that sends padded data:
> bins/opt/interop_client --test_case=large_unary --server_host=localhost --server_port=8080 --test_case=large_unary
I0327 16:37:15.394024983  133621 client.cc:105]              Testing these cases: large_unary
E0327 16:37:15.432329024  133621 interop_client.cc:158]      Error status code: 2 (expected: 0), message: Stream removed
Aborted (core dumped)

Note that running against the otherwise same server that only doesn't use padding passes:
> bins/opt/interop_client --test_case=large_unary --server_host=localhost --server_port=8083 --test_case=large_unary
I0327 16:37:39.848193777  133667 client.cc:105]              Testing these cases: large_unary

Was this happening on ARM (e.g. raspberry pi) / windows?

@jadekler I originally filed the issue after observing the behavior using the tested linux builds. I'd assume that the same thing occurs on other platforms but I hadn't tried.

Thanks @apolcyn

Bumping priority to P1. This is seen in multiple langs. See https://github.com/grpc/grpc/issues/15623

This reproduction does not work for me (on MacOS or Linux).
I see this error from the server:
Unhandled Error
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 86, in callWithContext
    return context.call({ILogContext: newCtx}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 122, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 85, in callWithContext
    return func(*args,**kw)
  File "/usr/lib/python2.7/dist-packages/twisted/internet/posixbase.py", line 614, in _doReadOrWrite
    why = selectable.doRead()
--- <exception caught here> ---
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 1066, in doRead
    protocol = self.factory.buildProtocol(self._buildAddr(addr))
  File "test/http2_test/http2_test_server.py", line 67, in buildProtocol
    return t(use_padding=False).get_base_server()
  File "/usr/local/google/home/ncteisen/Desktop/grpc/test/http2_test/test_data_frame_padding.py", line 31, in __init__
    self._base_server = http2_base_server.H2ProtocolBaseServer()
  File "/usr/local/google/home/ncteisen/Desktop/grpc/test/http2_test/http2_base_server.py", line 31, in __init__
    self._conn = h2.connection.H2Connection(client_side=False)
exceptions.TypeError: __init__() got an unexpected keyword argument 'client_side'

@ncteisen The http2 test script needs h2 version 2.6.1 (the client_side argument is gone in the latest h2 version)

[hi on] DESK ~/Desktop/grpc [master] (0) $ python
Python 2.7.13 (default, Nov 24 2017, 17:33:09)
[GCC 6.3.0 20170516] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import h2
>>> h2.__version__
'3.0.1'

I am on 3.0.1 and I still see this error..

Oh, I see, it needs the older version.. Got it

Man I with I uses venv

Now I see this error:
Unhandled Error
Traceback (most recent call last):
  File "/Library/Python/2.7/site-packages/twisted/python/log.py", line 103, in callWithLogger
    return callWithContext({"system": lp}, func, *args, **kw)
  File "/Library/Python/2.7/site-packages/twisted/python/log.py", line 86, in callWithContext
    return context.call({ILogContext: newCtx}, func, *args, **kw)
  File "/Library/Python/2.7/site-packages/twisted/python/context.py", line 118, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/Library/Python/2.7/site-packages/twisted/python/context.py", line 81, in callWithContext
    return func(*args,**kw)
--- <exception caught here> ---
  File "/Library/Python/2.7/site-packages/twisted/internet/selectreactor.py", line 149, in _doReadOrWrite
    why = getattr(selectable, method)()
  File "/Library/Python/2.7/site-packages/twisted/internet/tcp.py", line 208, in doRead
    return self._dataReceived(data)
  File "/Library/Python/2.7/site-packages/twisted/internet/tcp.py", line 214, in _dataReceived
    rval = self.protocol.dataReceived(data)
  File "/Users/ncteisen/Desktop/grpc/test/http2_test/http2_base_server.py", line 78, in dataReceived
    self._handlers['DataReceived'](event)
  File "/Users/ncteisen/Desktop/grpc/test/http2_test/test_data_frame_padding.py", line 66, in on_data_received
    self._base_server.setup_send(response_data , event.stream_id, pad_length=self._pad_length, read_chunk_size=self._read_chunk_size)
  File "/Users/ncteisen/Desktop/grpc/test/http2_test/http2_base_server.py", line 124, in setup_send
    self.default_send(stream_id, pad_length=pad_length, read_chunk_size=read_chunk_size)
  File "/Users/ncteisen/Desktop/grpc/test/http2_test/http2_base_server.py", line 149, in default_send
    self._conn.send_data(stream_id, data, end_stream=False, pad_length=pad_length)
exceptions.TypeError: send_data() got an unexpected keyword argument 'pad_length'

INFO       2018-06-25 12:09:47,974 http2_base_server:61 | Disconnected [Failure instance: Traceback (failure with no frames): <type 'exceptions.TypeError'>: send_data() got an unexpected keyword argument 'pad_length'

@apolcyn @ncteisen : Is this issue still relevant ? - if not, can we just close it?

Alex - can you please try reproducing and assign to me if this needs attention.
If not reproducible/relevant any more please close.

Sorry, this issue should really be titled: "C-core doesn't support incoming data frames with padding"
I don't think support has since been added, but will check

This is still reproduceable, and would technically be a gap in C-core's following of the h2 spec.
But at the same time:

I'm not aware of any users that have actually ran into this in the wild (I'm not sure if/what h2 implementations send padding, grpc doesn't)
C-core fails fast. E.g. contrarily, Go accepted padding but didn't account for it in flow control to grant back to the sender

Lowered to p2 and keeping open, if anyone hits it; though it likely could be closed


docs: Update Security Command Center UpdateNotificationConfig sample, adding filter to mutable field

Fixes b/155346619
Add "filter" to mutable fields for UpdateNotificationConfig.

Hi,
Not sure why the Kokoro checks didn't seem to finish, any idea on how to restart or resolve this?

@hannah-tsai The CI won't run unless you are a member of an org. Someone with write access needs to nudge it by adding a label.

Hi, not sure if I should be concerned with the Kokoro build failure?

Hi @hannah-tsai,
Would you mind modifying this PR to change this file instead? I shuffled the snippets into a different directory in #41.

Updated change list, busunkim96@ could you help to add a label to start the Kokoro test? Thanks!


ratelimit: allow metadata descriptors to be skipped

Signed-off-by: Thomas van Noort<EMAIL_ADDRESS>
Commit Message: ratelimit: allow metadata descriptors to be skipped
Risk Level: low
Testing: added unit tests
Docs Changes: per the protobuf definitions
Release Notes: N/A
Platform Specific Features: N/A
Additional Description:
The default behaviour was to skip calling the rate limiting service whenever the metadata key was not found and the default value was not set. This was not correctly documented (nor tested) since it mentioned that only the descriptor was skipped whereas the rate limiting service was skipped altogether.
This adds a skip_if_absent field in the same spirit as for the request headers action: if set to true it skips the descriptor but still calls the rate limiting service, otherwise it skips the rate limiting service.
Note that the deprecated dynamic metadata action does not support this field and defaults to false.

@kyessenov I'll let you throw it over to senior maintainers once you've signed off

Throwing this over to API reviewers @markdroth . Changes to the xDS require a separate approval. Code LGTM.

/retest
Gentle ping @markdroth

I think this needs main marge to pick up CI changes.

CC @htuch
Needs an API review.


adobe flash

hello
why does the clapper plugin use adobe flash?
is it not possible to use videojs-contrib-hls for the cdn requests?
best regards

+1


CI: GKE terminating namespace hack find orphaned objects

We can force delete namespaces but this leaves their contents behind.
Our tests can fail if unexpected pods and deploys are hanging about.
We now check each namespaced object of each k8s kind to see if the
namespace exists, deleting those in namespaces that don't.

This change is

test-gke K8sPolicy.*

Coverage increased (+0.03%) to 45.681% when pulling 7e6997198404e7c2a3d79a41029ef5a60829f413 on raybejjani:ci-clean-ns into ac74aeaf298dfabd0f034e9836e1b12485d99065 on cilium:master.

test-gke K8sPolicy.*

test-gke K8sPolicy.*

test-gke K8sPolicy.*

test-gke K8sPolicy.*

test-gke K8sPolicy.*

test-gke K8sPolicy.*

test-gke K8sPolicy.*

test-gke K8sPolicy.*


Update Fuzzer references

PR #9651 moved the location of some of the Fuzzer references. This PR adjusts sources to changes.

Hi @kgpai @amitkdutta @xiaoxmeng, can I please get a review for this small PR?


[Fix] Selection of transition ID in finalize.

Motivation
The motivating issue for this PR is here.
From the original discussion:

Fundamentally, while the call graph is constructed correctly, it is used in an unsound way to find the transition ID that corresponds to Future that is passed in as an operand to an await command (source). The child_transition_id linked above is used to initialize the FinalizeRegisters. The transition_id in FinalizeRegisters is only used to initialize an RNG in the rand instructions. The purpose is the ensure that on-chain logic (in finalize scopes) have a unique seed each time they are invoked.

The current implementation has the following issues:

In the case where an async function calls a mix of async and non-async functions, a non-existent transition is used in the call graph. Specifically it must an async function call that itself makes an async function call that precedes a non-async call. This results in the transaction getting rejected. In this case, the impacted programs are ones that use a specific mix of async and non-async calls.
In the case where only async calls are made, but are awaited in a different order than the call graph, an incorrect transition ID is used for the FinalizeRegisters. The only place where the transition ID is used is in the rand.chacha instruction. In this case, the impacted programs are ones that make async calls to programs with rand.chacha but await the futures in a different order.

There are a number of possible ways this could be addressed:

Update the implementation to get the correct transition ID. This would require more information to be passed in during finalization.
Add a transition ID to the Future. This would be a breaking change in the data format, but conceptually sound.
Fix the use of the transition ID to not require the precise sub-transition, while maintaining the invariant that RNG seeds are unique.

This PR proposes a solution to this issue by introducing a nonce to FinalizeRegisters. This nonce is used to seed the rand commands. Furthermore, instead of attempting to determine the child_transition_id that corresponds to an awaited Future from the call graph, this approach uses the main transition ID to initialize all FinalizeRegisters for a given transaction. The main transition ID along with the nonce ensures that each finalize context uses a unique seed for the RNG, while removing the need to correctly determine the transition ID for a given Future (a complicated process).
Migration
This proposal has been written to migrate at N::CONSENSUS_V2_HEIGHT.
Given timelines, it's more likely that a new N::CONSENSUS_V3_HEIGHT would need to be introduced. The migration would follow the process introduced in ARC-0042.
Test Plan
This PR includes a test, whose expected output demonstrates the the failure and the fix after CONSENSUS_V2_HEIGHT is reached.
Included is the CI branch and the CI diff.
Impact
As stated above, there are two classes of programs that are impacted by this issue:

those that use a mix of async and non-async calls in a specific way.
that make async calls to programs with rand.chacha but await the futures in a different order that the async functions were called.

In scanning all Aleo programs deployed on Mainnet as of 11/12/24 5PM PT:

There are 10 functions among all programs deployed to mainnet, which contain a non-async call, followed by an async call.

puzzle_spinner_v001.aleo/spin - Not impacted b/c puzzle_arcade_ticket_v001.aleo/mint does not make an async call
puzzle_spinner_v002.aleo/spin - Same as above
arcn_puc_in_helper_v2_2_3.aleo/swap_amm_credits_in - Not impacted b/c token_registry.aleo/transfer_private_to_public does not make an async call
arcn_puc_in_helper_v2_2_4.aleo/swap_amm_credits_in - Same as above
arcn_credits_in_helper_v2_2_2.aleo/remove_liq_credits_is_token1 - Same as above
arcn_credits_in_helper_v2_2_3.aleo/remove_liq_credits_is_token1 - Same as above
arcn_pub_v2_2_3.aleo/create_pool - Not impacted b/c arcn_pool_v2_2_2.aleo/transfer_lp_receipt_by_salt does not make an async call
arcn_priv_v2_2_2.aleo/create_pool - Same as above
arcn_priv_v2_2_3.aleo/create_pool - Same as above
arcn_pub_v2_2_2.aleo/create_pool - Same as above

There are 12 programs that use the rand.chacha command and 0 programs that import, and consequently, call them.

This was confirmed by a static analyzer on all programs on mainnet at the above date and time and double-checked by manual audit.
Related PRs

https://github.com/ProvableHQ/leo/pull/28443

To Reviewers
An important function of this PR is to provide an understanding of how async execution mechanism works and why this PR is needed. If reviewers need context or clarification, please feel to post your questions in this thread. I am also happy to do a call explaining the original and proposed design/code.

Overall, logic changes seem fairly sound to me. I only had a few nits.
I think if we can run sufficient testing on dev/iso-nets, we can ship this out with the next migration (V3).

Ran some tests with light load and validators resetting ledgers and reconnecting, seems stable so far :+1:


update [pkgreview] url

closes #6186

Warnings

:warning:
This PR modified service code for pkgreview but not its test code. That's okay so long as it's refactoring existing code.

Messages

:book:
:sparkles: Thanks for your contribution to Shields, @chris48s!

  Generated by :no_entry_sign: dangerJS against 5dc9b69ced28f8906eea99e6422a079839299c76


Colonies don't work i have read through all the guides and i just cant find what i did wrong

show the contents of the Moreparts folder and take a screenshot of the console with F1 in game


Manually publishing a container from the command line will not properly populate the tag information

When you manually publish a container and it is refreshed, the Tag information will not be properly populated.  This is likely an issue with the refresh not working properly on manually published containers.

This has been mostly fixed, except for the cases mentioned in #106 and #107.

The issues #106 and #107 have been fixed


Autocomplete doesn't suggest method names in languages that don't use . for members

When using the LSP with Hack (or any language that doesn't use . to access member functions, like Rust with :: for modules), ALE doesn't autocomplete the available functions/members. You need to guess the first character of the method you want to call, type that, and then ALE properly shows all of the available autocomplete entries starting with that character. LSP implementations usually support this type of autocomplete.
For a concrete example, in Hack (running the hh_server LSP implementation), if I type FooClass::, I'd expect to see all of the available static class variables/methods/constants available on FooClass. If I manually send an LSP query at that position, the response correctly has that information.

Hello @w0rp, currently, ALE doesn't trigger completion on variables that their type is a pointer in C because its trigger character is ->. I've been looking for a solution for this and turned out there's no way to customize s:trigger_character_map at https://github.com/w0rp/ale/blob/01331266a84859d4b0935b81ae773ff0d7af7522/autoload/ale/completion.vim#L63
Could you consider to introduce a g:trigger_character_map?

What is should do is read the trigger characters from the language server, and that map should be replaced with what the language server says is valid instead.


Record the Pixidust video due to product changes

The video tutorial for this application (https://youtu.be/cYUdXFEmxP4), is out of date and needs to be re-recorded. For example, DSX on IBM Cloud has been replaced by Watson Studio, storage is now CLoud Object Storage etc.

This pattern has a new data set and use case, making this issue obsolete. A new video will be produced.


"import Redis" is flagged as invalid constructor function type in ESM TypeScript project

I had to do this to get started
import Redis from 'ioredis'

import type { Species } from '#lib/pokemon/Species.js'

export enum RedisKey {
  GetPokemon = `getPokemon`
}

export type RedisQuery<K extends RedisKey> = K extends `getPokemon` ? Species : null

export class RedisClient extends Redis {
  public async insert<K extends RedisKey>(
    key: K,
    query: RedisQuery<K>,
    data: unknown
  ): Promise<`OK`> {
    return super.set(`${key}:${query}`, JSON.stringify(data))
  }
}

Same issue as:
import { default as Redis } from 'ioredis'

They prints: Type 'typeof import("node_modules/.pnpm/ioredis@5.2.3/node_modules/ioredis/built/index")' is not a constructor function type.
My project settings are:

package
version

Module Type
ESM

Node.js
16.13.2

pnpm
7.9.5

ioredis
5.2.3

TypeScript
4.8.2

@types/ioredis
not installed

TSConfig:
{
  "extends": "@sapphire/ts-config/extra-strict",
  "compilerOptions": {
    "lib": ["ESNext"],
    "target": "ESNext",
    "module": "ESNext",
    "moduleResolution": "Node16",
    "emitDecoratorMetadata": false
  }
}

Additional info for more context, new Redis() throws similar error: "This expression is not constructable. Type 'typeof import("node_modules/.pnpm/ioredis@5.2.3/node_modules/ioredis/built/index")' has no construct signatures."

Resolved as do:
import { default as Redis } from 'ioredis'

export class RedisClient extends Redis.default {
  // ... whatever
}

I'd say this issue should be re-opened as the workaround is kind of odd.

I'd say this issue should be re-opened as the workaround is kind of odd.

I assume would be better open a new ticket.

I'd say this issue should be re-opened as the workaround is kind of odd.

I assume would be better open a new ticket.
I disagree, as it would be a duplicate of this unresolved issue. But I'll do that if you don't want to open the issue.

@luin I re-open this issue because the behavior is odd and still would be problem.
Tracking of #1624, #1632

import { default as Redis } from "ioredis" is the solution documented on README.md but I agree the syntax may seem odd.

import { default as Redis } from "ioredis" is the solution documented on README.md but I agree the syntax may seem odd.

The problem is that despite using that import statement one still has to use Redis.default as a constructor to make it properly work with Typescript.
Example:
import { default as Redis } from 'ioredis';
const redis = new Redis.default();

The named Redis export is only exported as a type. Which is kind of strange as well.

I can confirm that the normal import doesn't work when using moduleResolution node16 or nodenext. We are currently using the following workaround:
import RedisModule from 'ioredis'

// FIXME: https://github.com/luin/ioredis/issues/1642
const Redis = RedisModule.default

I can confirm that the normal import doesn't work when using moduleResolution node16 or nodenext. We are currently using the following workaround:
import RedisModule from 'ioredis'

// FIXME: https://github.com/luin/ioredis/issues/1642
const Redis = RedisModule.default

I also use node16, and trapped by this @luin

I can confirm that the normal import doesn't work when using moduleResolution node16 or nodenext. We are currently using the following workaround:
import RedisModule from 'ioredis'

// FIXME: https://github.com/luin/ioredis/issues/1642
const Redis = RedisModule.default

I also use node16, and trapped by this @luin

I can confirm that the normal import doesn't work when using moduleResolution node16 or nodenext. We are currently using the following workaround:
import RedisModule from 'ioredis'

// FIXME: https://github.com/luin/ioredis/issues/1642
const Redis = RedisModule.default

I also use node16, and trapped by this @luin

This issue has been fixed. Probably in v5.2.5.
Issue can be closed.

Fixed in #1695


TypeError: 'type' object is not subscriptable

I run the code just without editing and meet this error.
What is the problem..?
Traceback (most recent call last):
File "train.py", line 9, in
from diffusion import GaussianDiffusion
File "/workspace/sanghyu.yoon/nfsdata/home/sanghyu.yoon/code/research_23/classifier-free-diffusion-guidance-Pytorch/diffusion.py", line 8, in
class GaussianDiffusion(nn.Module):
File "/workspace/sanghyu.yoon/nfsdata/home/sanghyu.yoon/code/research_23/classifier-free-diffusion-guidance-Pytorch/diffusion.py", line 79, in GaussianDiffusion
def q_mean_variance(self, x_0:torch.Tensor, t:torch.Tensor) -> tuple[torch.Tensor, torch.Tensor]:
TypeError: 'type' object is not subscriptable

It seems that you are using an earlier version of Python 3.9. If you do not want to upgrade your Python, you can change the annotation to use typing.Tuple instead of tuple. Here are the changes you should take:
from typing import Tuple

# def q_mean_variance(self, x_0:torch.Tensor, t:torch.Tensor) -> tuple[torch.Tensor, torch.Tensor]:
def q_mean_variance(self, x_0:torch.Tensor, t:torch.Tensor) -> Tuple[torch.Tensor, torch.Tensor]:

Hope this helps.

Thank you.....so......much...!!!!! It works well!


[Microsoft.Storage] Adding missing subscription global usages api

MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Changelog
Please ensure to add changelog with this PR by answering the following questions.

What's the purpose of the update?

[ ] new service onboarding
[ ] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[ ] Other, please clarify

When you are targeting to deploy new service/feature to public regions? Please provide date, or month to public if date is not available yet.
When you expect to publish swagger? Please provide date, or month to public if date is not available yet.
If it's an update to existing version,  please select SDKs of specific language and CLIs that require refresh after swagger is published.

[ ] SDK of .NET (need service team to ensure code readiness)
[ ] SDK of Python
[ ] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[ ] PowerShell
[ ] CLI
[ ] Terraform
[ ] No, no need to refresh for updates in this PR

Contribution checklist:

[ ] I commit to follow the Breaking Change Policy of “no breaking changes
[ ] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

[ ] Ensure to check this box if one of the following scenarios meet updates in the PR, so that label “WaitForARMFeedback” will be added automatically to involve ARM API Review. Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs, all “removals” and “adding a new property” no more require ARM API review.

Adding new API(s)
Adding a new API version
Adding a new service

[ ] Please ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If there are following updates in the PR, ensure to request an approval from API Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in stable version
[ ] Removing properties in stable version
[ ] Removing API version(s) in stable version
[ ] Updating API in stable version with Breaking Change Validation errors
[ ] Updating API(s) in preview over 1 year

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.

Do we really want to add this API back?
This API is removed with the commit fc863cb, since SRP team says:

We should deprecate global usage (it gives incorrect / misleading information anyways).  Location-based usage was always meant to replace it.  We don’t have any currently don’t have any plan to support global usage in new API versions.

The operation is not removed from the SRP code base and its still supported. The missing swagger is flagged in S360 KPI.

@priyapansrp
Please make sure this API works well.
We remove it before, since it does not work well, and Chris confirm it's deprecated.
If it works well on server (the correct usage can be return) , I have no problem to add it back.


Unexpected behaviour on using clang binding

PREREQUISITES:

clang-3.7 with python2 bindings installed
Python-2.7
vim-7.4(1-884)

STEPS TO REPRODUCE:

unpack attachment "plugin.zip" to ~/.vim/plugin
Put source file "main.cpp" from attachment in some directory. Then edit "clang_service.py", path to source should point to the "main.cpp". It's very important! If script doesnt find the source bug wont reproduced.
execute in shell "export PYTHONPATH=~/.vim/plugin"
Run vim within the shell.

EXPECTED RESULTS:
Vim works as usual.
ACTUAL RESULTS
Vim goes to undefined state. Keys not work, strange output. In short not work everithing. For example pressing arrow keys in normal mode causes output of number. Here is the example: just opened main.cpp and pressed arrow buttons:
main2ain()
{
    return 0;
}2,1{
~
}3,2{
~
}4,1{
~
}3,21
~
~
"main.cpp" 4L, 29C                                                             1,1           Усе

This bug blocks work of highlighting plugin based on clang (like clighter).
Plugin (in attachment) very simple:
" file  plug.vim
py import clang_service

# file clang_service.py
from clang import cindex

idx = cindex.Index.create()
idx.parse("/pathto/main.cpp", None, None, 0)

ATTACHMENTS:
bugreport.txt
main.cpp
plugin.zip

The attachment links are no longer working:

Sorry, the file you have requested does not exist.

So, there's no way to reproduce the issue anymore.

The OP deleted their account, so we won't get any feedback from there anymore.

After more than 5 years, nobody commented on this issue to acknowledge it or give more details.

Python 2 is no longer supported.

so closing


Create interface for reading from mindpak bundles

Relates to #2541
Create an interface for reading the contents of the bundle, and provide an implementation and tests.
Summary
Provide a brief overview of the changes and the issue being addressed.
Explain the rationale and any background necessary for understanding the changes.
List dependencies required by this change, if any.
Fixes #(related issue)
Change Type
Mark the type of change your PR introduces:

[ ] Bug fix (resolves an issue without affecting existing features)
[x] Feature (adds new functionality without breaking changes)
[ ] Breaking change (may impact existing functionalities or require documentation updates)
[ ] Documentation (updates or additions to documentation)
[ ] Refactoring or test improvements (no bug fixes or new functionality)

Testing
Outline how the changes were tested, including steps to reproduce and any relevant configurations.
Attach screenshots if helpful.
Review Checklist:

[x] Reviewed my own code for quality and clarity.
[x] Added comments to complex or tricky code sections.
[ ] Updated any affected documentation.
[x] Included tests that validate the fix or feature.
[ ] Checked that related changes are merged.

coverage: 46.344% (-0.2%) from 46.541%
when pulling 3ff56eb8832272a4ceee64e6ac528aaac2d1501d on bundle-loader
into f1a4d07c204120dcaac005dd5fcd5de9770c7a59 on main.


Update 06_Core_committers.md

Rewording, grammar.

Sad face?

Huh ? I closed it because I missed a mistake and I also noticed that it was duplicated....so, no sad face ;)


download templates manually

I know I can't download all the templates but is there a way to download templates manually? Sometimes it's very difficult to switch to a new map. Maybe there's a way to shorten this time
By the way, when I set the less painted templates option to "false", it gives an error 500.

I know I can't download all the templates but is there a way to download templates manually? Sometimes it's very difficult to switch to a new map. Maybe there's a way to shorten this time
By the way, when I set the less painted templates option to "false", it gives an error 500.

I've reworked the image loader to use the requests library since the aiohttp implementation wasn't working properly when proxies were used, causing image loading to break. Can't say for sure what's causing this behavior yet - maybe I'm missing something or don't fully understand something. In any case, the new implementation works in principle, and during my testing no exceptions occurred, so hopefully there will be minimal issues. Regarding your suggestion about manual template installation - i think I'll add this functionality in the next update.


Creating secret/configmap/service leads to a blank page

Version: master-head(7248f0966)
Steps:

Create a secret/configmap/service from the dashboard UI

Result:
It takes us to a blank screen as below

Tested using master-head (7248f0966) with the updated UI
Creating a secret/configmap/service from the dashboard UI is functional


Sometimes the toast style is'nt loaded untill page reload.

Hello, I've got a bug for few weeks and I haven't any ideas of his cause.
When a user logs out and reconnect directly the style of the toasts isn't loaded and the solution is to reload the page.
The toast appears like that:

I've tried to test without the lazy loading and it's the same.
Does anyone have an idea?
Thanks in advance.

Any update on this issue that could be useful. I get like this only on the production build.


Update distributed_tuning.ipynb

Link to Colab tutorial for Gemma distributed finetuning
Description of the change

Originally Colab didn't work for Gemma dist finetuning. But Colab team figured it out and created a copy of the tutorial that works on Colab TPU.

The linter is complaining about the Colab link. It might be a false positive, but we should update the link to not use the Colab sandbox (colab.sandbox.google.com).

Fixed

Thanks. It looks like the notebook on GitHub is not the same one we're opening in Colab, but I'm sure that's for a reason. I'll squash/merge.

Right. Colab team had to fork it to do some hacking due to its lower version of TPU v2. Kaggle offers TPU v3.


Fix docker compose running problem & running in circleci

solved #106

Codecov Report

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

@@            Coverage Diff             @@
##           master     #106      +/-   ##
==========================================
- Coverage   77.68%   77.38%   -0.31%
==========================================
  Files          16       16
  Lines        1658     1658
==========================================
- Hits         1288     1283       -5
- Misses        370      375       +5

Impacted Files
Coverage Δ

nekoyume/models.py
74.78% <ø> (-0.71%)
: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 fa3188a...4fd8e09. Read the comment docs.


Issue template: add info on wiki.gg

Issue template does not mention wiki.gg not allowed on indie wiki buddy, despite all other places (the extension's home page itself, and the google form) mention that. Please add that info to the issue template.

Appreciate the suggestion, but declining since we'll soon be including wiki.gg wikis. Thank you!


WIP - One off charges

This pull request closes #42.
There are a few things that still need to be done, and on which I would appreciate your input (@sandervanhooft).
Order items "on the tab" collision (?) with Subscription order items.
Currently, because of the nature of the subscription billing implementation, the 'open tab' may collide  with subscription billing.
Example 1: calling $user->invoice() may end up invoicing subscription items if they are due for processing (could be the intended functionality?).
Example 2: php artisan cashier:run will invoice the items that we put on the tab, once they are due for processing.
If we intend to split apart subscription billing and one off payments, we can add an extra table tab_items that simply points to the id of an order item that is supposed to be on the tab. After that we can add two scopes onTheTab and forSubscriptions (naming up for discussion of course), and add the forSubscriptions scope to Cashier::run, as well as the onTheTab scope to the invoice method.
My assumption was/is that you would prefer not to split this apart, since it could be nice if a developer can put an extra item on the customers next bill (complementary to the fee for the subscription).
In this case we would need to document this properly, and in my opinion also write some extra tests that do some checking on the aforementioned scenario (subscription + one off payment complimentary usage).
Double checking the payment flow for one off payments
Though this is pretty obvious, you may want to double check if the one off payment flow that is implemented is correct. A quick summary:
Scenario 1:

Customer has a valid mandate
One off payment initiated by developer
Prevent if there are no order items that are due for processing
We create an invoice + process the payment

Scenario 2:

Customer doesn't have a valid mandate
One off payment initiated by developer
Prevent if there are no order items that are due for processing
We create a payment at Mollie, and redirect the customer to the checkout
Mollie calls our webhook.

if successful we create an order. (OrderPaymentPaid event)
if failed we don't create an order, so the tab stays open. (OrderPaymentFailed event)

This flow is quite the same as the "first payment" flow, except the fact that we are creating a "one off payment", which means we don't create a mandate in the process.
Something you will notice is that the "one off payment flow" is not using/hooking onto the Actions that are currently a feature for subscriptions. This was done on purpose, since I couldn't think of a scenario where you would want to do "anything fancy" with a one off payment. This also means that instead of storing actions in the Mollie Payment metadata, we are simply storing the order items. If someone can think of a valid reason to introduce the extra layer of complexity (the actions), we could revisit this implementation.
Double check the written tests
I'm not completely up to speed with your usual event dispatching for example, in the end I haven't used this package since 1.0 because there were no "one off payment" possibilities, which was my main use case in the application I was building. Kindly check if the tests are up to par, and if they need to be improved/extended.
Notes

The Laravel\Cashier\SubscriptionBuilder\RedirectToCheckoutResponse class has been reused (for developer friendliness), even though the namespace is now kind of weird; maybe we should flag this as something that can be improved in V2? (since it's a breaking change to move it to a different namespace)

Instead of using get_class($user) I used $user->getMorphClass(), which supports Laravels MorphMap (I noticed later you used get_class()). You could see this as a breaking change. If a developer has defined a morph map for their User model, it will now use the defined string by the developer instead of the fully qualified name of the User model (though chances are probably very low the generic developer is using this [this is an assumption though :)]). I noticed this later, as well as the assumption we're currently making that the user will always have an id column ($owner->id calls). We should replace this with $owner->getKey() instead in the future, so we support different primary key names. Let me know what your thought are on the above.

To do's

[ ] Add 2 extra variables to the phpunit.xml for usage in ManagesInvoiceTest.php, since one off payments have a different Mollie Payment metadata (they use the order items, not the actions after all.
[ ] (?) Might as well create a simply "entrypoint" for developers, from where they can run 1 test, and copy paste all the necessary Mollie id's to their phpunit.xml. This will (in my opinion) greatly improve onboarding of developers for pull requests (perhaps other pull request?).
[ ] Change ->getMorphClass() calls to get_class.
[ ] (?) Someone will need to add some extra tests for one off payment + subscription complimentary usage.

Let me know your thought on this so far.

Relates to #40 and #190 (MorphMap)

Regarding the testability for contributors, I agree that it could be simplified/easier to get started. Also see the discussion here.

First impressions:

I'm surprised by the high quality of this PR, a lot of thinking went into this. Big thanks!
there's still some cases that we'll need to cover (i.e. optionally create and store a new mandate, what if there's no next payment/subscription scheduled). I'll get back to you on this.
I like the "keeping a separate tab" idea. It's what I had in mind when designing this package. Having the Orders and OrderItems for the actual processing of payments, generating receipts etc.. They were designed to support any kind of "Orderable" item (subscription, one-off, ...). The only thing that is conceptually limiting this issue and for example multiplan subscriptions, is not having a dedicated BillingCycle. It's currently integrated with the Subscription. (For now, let's keep it that way ;) ).
The morphability is something I have to dive into. I like how Spatie has been doing this using configs and service providers. But my knowledge may be outdated on this part.

I highly appreciate this contribution and will be looking into this. It will be a key part of the v2 release. It can take some time because

in full transparency, I'm recovering from what probably was covid-19, working 1/3 of my normal hours.
Spark Mollie is being released the 28th of May. 🎉

That being said, rest assured you have my attention 😉 .

@sandervanhooft No worries about the timeframe, just take it easy ;).
Is the develop branch going to be the base for the V2 release branch? In that case I will just let the morphable related code be (since it won’t break any tests). Good thing to note for the upgrade guide though.
I had seen the conversation you mentioned about the “making testing easier” comment. The thing I’m envisioning is a “run this with your mollie api key, copy paste to your phpunit configuration and you’re done” kind of thing. After that you’d be able to run all the tests without figuring out what mandates or subscriptions, first payments etcetera are. Sometimes you wish to make a simple change, but you still have to run the test suite, so I thought we could make that a lot easier for simple pull requests.
Great that Spark Mollie is being released, I’m thinking of giving that a spin for a side project to play with it!
Just a thought off the top of my head; Optionally making a mandate can probably be implemented by passing [“method” => “first”] to the invoice options.

Let's treat this as a breaking change, so implement it on dev-v2. (I'll set that up in a minute)

If this goes into v2, I guess that means having this feature available will require waiting for any other v2 milestones to be finished as well? Or might finishing this warrant releasing v2?

Any update on this feature? Would love to see this in V2 😄

Hi @mbardelmeijer, I’m not really sure about the roadmap for V2. Seeing the latest commits it looks like Sander has been improving some testing utilities lately.
@sandervanhooft
I would like to suggest to create a “V2 issue” with a roadmap of the things to do so the community also has a better idea of what’s happening, but it’s up to you of course.

I am silently (so mostly off-radar) working on v2, hope to release by the end of the year / beginning of next year. I'm tackling some fundamental changes first.

@sandervanhooft I would love to test v2 when you have an alpha ready!

@jelleroorda We're a long way into developing the v2 alpha, almost ready for release. We have heavily based the new one-off payment features on this PR, but since there was a lot changed already we had to copy it in. Rest assured the features will be properly attributed to you on release. Big thanks and we'll get back to you soon!


Adds Gnuplot data file parser

This could probably be used to make our test cases more sane?
Honestly, I used doubly linked lists because it was easy, but it may be worth considering converting it to some kind of array. In the least, it should be very fast since I used an iterator on the lists and not array indices.
I should also write tests for this to make sure that it actually works the way it should. I wrote this without running it once and I presume it works...

LGTM