i can't type korean language into TextField.

Steps to Reproduce

Execute flutter run on the code sample
...
...

Expected results:
Actual results:

Code sample

Logs

<!--
      Consider also attaching screenshots and/or videos to better
      illustrate the issue.

      You can upload them directly on GitHub.
      Beware that video file size is limited to 10MB.
-

https://user-images.githubusercontent.com/18536090/144990802-7c59f4eb-9535-4e09-a823-a0d346a80bc3.mp4

->

please tell me how to solve

@KyoungJoonKim
When opening an issue, please try to provide all or some of the information indicated in the template.

Issue Template
If you are looking for support, please check out our documentation
or consider asking a question on Stack Overflow:
- https://flutter.dev/
- https://api.flutter.dev/
- https://stackoverflow.com/questions/tagged/flutter?sort=frequent

If you have found a bug or if our documentation doesn't have an answer
to what you're looking for, then fill our the template below. Please read
our guide to filing a bug first: https://flutter.dev/docs/resources/bug-reports

Steps to Reproduce

Please tell us exactly how to reproduce the problem you are running into.

Please attach a small application (ideally just one main.dart file) that
reproduces the problem. You could use https://gist.github.com/ for this.

If the problem is with your application's rendering, then please attach
a screenshot and explain what the problem is.

1. ...
2. ...
3. ...

Please tell us which target platform(s) the problem occurs (Android / iOS / Web / macOS / Linux / Windows)
Which target OS version, for Web, browser, is the test system running?
Does the problem occur on emulator/simulator as well as on physical devices?

Target Platform:
Target OS version/browser:
Devices:

Run your application with `flutter run --verbose` and attach all the
log output below between the lines with the backticks. If there is an
exception, please see if the error message includes enough information
to explain how to solve the issue.

Run `flutter analyze` and attach any output of that command below.
If there are any analysis errors, try resolving them before filing this issue.

Finally, paste the output of running `flutter doctor -v` here.

Closing this issue, since no information has been provided.
Thank you.


Provide an OpenAPI schema

It would be nice to have an OpenAPI schema for the API, it would allow us to generate the types for the frontend automatically.
One possible library: https://github.com/juhaku/utoipa
Not sure what is the best way to distribute the schema, here are some ideas:

Serve it from an endpoint
Store it in the repository

Add checks in CI to ensure the schema is up-to-date
I would prefer this option so that I won't need to run the backend locally every time I want to get the latest schema

Serving the OpenAPI schema from an API endpoint would make the most sense and would always be correct for the instance running. For local development you can just fetch the schema from production.

Yeah that's a good point, maybe it's better to serve it from an endpoint. I was thinking of cases where there the latest version of the backend has not yet been deployed to production but I guess those situations are pretty rare.


Add StringStream implementation

By using the existing interfaces (IInputStream, IOutputStream) a StringStream implementation would be nice to have.
A StringStream should double its internal memory as soon as it is getting full (see BinaryInputStream).
A StringStream should accept basic datatypes, user specific datatypes can be added to a stream by the user by overloading respective operators.

StringInputStream and StringOutputStream are available in the latest release.


Documentation of unaliasDeclaration

In pkg/front_end/lib/src/fasta/builder/type_alias_builder.dart, consider using the following DartDoc:
/// Expands a type alias to find the named type it aliases, if any.
///
/// A type alias is considered to alias a named type if it always expands
/// to that named type, or to an instantiation of that named generic type.
/// Not all type aliases are considered to alias a named type.
///
/// The aliased named type is found by expanding the type alias to
/// the type it aliases.
/// If that type is again a type alias, it is repeatedly expanded
/// until finding a non-alias type.
///
/// If that type is one of the type variables of this type alias,
/// and [isUsedAsClass] is true, then we do not consider the type alias
/// as aliasing a single named type.
/// If [isUsedAsClass] is false, the type variable is replaced by its
/// value from [typeArguments], and iteration continues if that is a
/// type alias type.
///
/// If the found type is not a type variable and is still not a named type
/// (be it a nullable type, a function type, `dynamic`, `void`, `Never`,
/// or a [FutureOr] type), the alias is not considered as aliasing any named type.
///
/// Otherwise the found type denotes a type declared by a `class`, `mixin` or
/// `enum` declaration, possibly with some type arguments applies.
/// In that case, the found type is returned.
///
/// In all other cases, this type alias is returned as-is, to represent
/// the lack of an aliased named type.
///
/// If [isUsedAsClass] is true, the alias is being used in a place where
/// not all types can occur. That is currently either
/// a superclass, mixin, interface, or mixin super constraint (to denote a
/// class or interface), in an object creation expression or redirecting
/// factory constructor (to denote a constructor),
/// or in a static member invocation (to denote a class or mixin declaration).
/// In this case, [invocationCharOffset] and [invocationFileUri]
/// must be non-null.

Check that all parameters are documented. Note that the current DartDoc is ambiguous about the expansion (should use 'transitive alias expansion', thus relying on the spec).

Closing: This dart doc comment has been rewritten extensively at this time.


[ZF3] Callback handler for PHP 5.4

As ZF3 will be PHP 5.4 only, we can optimize this class quite heavily.
All tests pass (of course Travis fails because of PHP 5.3).

This class has been removed on V3


I always get errors when installing dependencies! Can you please help me fix this?

D:\AIGC\comfyui\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_LayerStyle>......\python_embeded\python.exe -s -m pip install .\whl\docopt-0.6.2-py2.py3-none-any.whl
Processing d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\comfyui\custom_nodes\comfyui_layerstyle\whl\docopt-0.6.2-py2.py3-none-any.whl
docopt is already installed with the same version as the provided wheel. Use --force-reinstall to force an installation of the wheel.
D:\AIGC\comfyui\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_LayerStyle>......\python_embeded\python.exe -s -m pip install .\whl\hydra_core-1.3.2-py3-none-any.whl
Processing d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\comfyui\custom_nodes\comfyui_layerstyle\whl\hydra_core-1.3.2-py3-none-any.whl
Requirement already satisfied: omegaconf<2.4,>=2.2 in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from hydra-core==1.3.2) (2.3.0)
Requirement already satisfied: antlr4-python3-runtime==4.9.* in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from hydra-core==1.3.2) (4.9.3)
Requirement already satisfied: packaging in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from hydra-core==1.3.2) (24.1)
Requirement already satisfied: PyYAML>=5.1.0 in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from omegaconf<2.4,>=2.2->hydra-core==1.3.2) (6.0.2)
hydra-core is already installed with the same version as the provided wheel. Use --force-reinstall to force an installation of the wheel.
D:\AIGC\comfyui\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_LayerStyle>......\python_embeded\python.exe -s -m pip install -r requirements.txt
Requirement already satisfied: numpy<2.0 in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from -r requirements.txt (line 1)) (1.26.4)
Requirement already satisfied: pillow in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from -r requirements.txt (line 2)) (10.4.0)
Requirement already satisfied: torch in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from -r requirements.txt (line 3)) (2.5.1+cu124)
Requirement already satisfied: matplotlib in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from -r requirements.txt (line 4)) (3.9.2)
Requirement already satisfied: Scipy in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from -r requirements.txt (line 5)) (1.14.1)
Requirement already satisfied: scikit_image in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from -r requirements.txt (line 6)) (0.24.0)
Requirement already satisfied: scikit_learn in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from -r requirements.txt (line 7)) (1.5.2)
Requirement already satisfied: opencv-contrib-python in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from -r requirements.txt (line 8)) (<IP_ADDRESS>)
Requirement already satisfied: pymatting in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from -r requirements.txt (line 9)) (1.1.12)
Requirement already satisfied: segment_anything in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from -r requirements.txt (line 10)) (1.0)
Requirement already satisfied: timm in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from -r requirements.txt (line 11)) (1.0.11)
Requirement already satisfied: addict in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from -r requirements.txt (line 12)) (2.4.0)
Requirement already satisfied: yapf in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from -r requirements.txt (line 13)) (0.40.2)
Requirement already satisfied: colour-science in d:\aigc\comfyui\comfyui_windows_portable_nvidia\comfyui_windows_portable\python_embeded\lib\site-packages (from -r requirements.txt (line 14)) (0.4.6)
Collecting wget (from -r requirements.txt (line 15))
Using cached wget-3.2.zip (10 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... error
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> [31 lines of output]
Traceback (most recent call last):
File "D:\AIGC\comfyui\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable\python_embeded\Lib\site-packages\pip_vendor\pyproject_hooks_in_process_in_process.py", line 353, in
main()
File "D:\AIGC\comfyui\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable\python_embeded\Lib\site-packages\pip_vendor\pyproject_hooks_in_process_in_process.py", line 335, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\AIGC\comfyui\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable\python_embeded\Lib\site-packages\pip_vendor\pyproject_hooks_in_process_in_process.py", line 112, in get_requires_for_build_wheel
backend = _build_backend()
^^^^^^^^^^^^^^^^
File "D:\AIGC\comfyui\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable\python_embeded\Lib\site-packages\pip_vendor\pyproject_hooks_in_process_in_process.py", line 77, in build_backend
obj = import_module(mod_path)
^^^^^^^^^^^^^^^^^^^^^^^
File "importlib_init.py", line 90, in import_module
File "", line 1387, in _gcd_import
File "", line 1360, in _find_and_load
File "", line 1310, in _find_and_load_unlocked
File "", line 488, in _call_with_frames_removed
File "", line 1387, in _gcd_import
File "", line 1360, in _find_and_load
File "", line 1331, in _find_and_load_unlocked
File "", line 935, in load_unlocked
File "", line 995, in exec_module
File "", line 488, in call_with_frames_removed
File "D:\AIGC\comfyui\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable\python_embeded\Lib\site-packages\setuptools_init.py", line 16, in
import setuptools.version
File "D:\AIGC\comfyui\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable\python_embeded\Lib\site-packages\setuptools\version.py", line 1, in
import pkg_resources
File "D:\AIGC\comfyui\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable\python_embeded\Lib\site-packages\pkg_resources_init.py", line 2191, in
register_finder(pkgutil.ImpImporter, find_on_path)
^^^^^^^^^^^^^^^^^^^
AttributeError: module 'pkgutil' has no attribute 'ImpImporter'. Did you mean: 'zipimporter'?
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.

Try manually installing each dependency package in requirements.txt
like this:
D:\AIGC\comfyui\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable\python_embeded\python.exe -s -m pip install xxxxx

I managed to find a work-around - install the dependencies one-by-one:
cd "${comfyuiHome}/custom_nodes"
for dep in $(cat ComfyUI_LayerStyle/requirements.txt); do python -s -m pip install "${dep}"; done


add time unit WEEK to EXTRACT()

Is your feature request related to a problem? Please describe.
We work with small files in hdfs, our current process for good performance is to save all data before current month to parquet (new table) and then UNION ALL with current month files (and save as view). this process is called once a month.
Now we are faced with high velocity data, so that we have to call the above process every week instead of once a month.
We could do this through other apache solutions but DRILL is the most convenient way.
Describe the solution you'd like
 SELECT EXTRACT(WEEK from CURRENT_DATE) as weekno,CURRENT_DATE FROM (VALUES(1));
+--------+--------------+
| weekno | CURRENT_DATE |
+--------+--------------+
| 48     | 2021-11-30   |
+--------+--------------+

Describe alternatives you've considered

Go back 7 days with INTERVAL

WHERE `dir0` > DATE_SUB(CURRENT_DATE,INTERVAL '7' DAY)

Only jira ticket i found was
https://issues.apache.org/jira/browse/DRILL-4550
from 29/Mar/16 01:34

Thanks for the quick answer!
Neat trick although the second one with TO_DATE throws following error:
SELECT TO_DATE(nearestDate(CURRENT_DATE, 'WEEK_SUNDAY'), 'w') AS week_num
FROM (VALUES(1));

Error: SYSTEM ERROR: IllegalArgumentException: Invalid format: "2021-11-28 00:00:00.000" is malformed at "21-11-28 00:00:00.000"

Fragment 0:0

Please, refer to logs for more information.

[Error Id: 02de9e0a-7521-45c9-b1bc-140352bc934b on xxxxxxx]

  (java.lang.IllegalArgumentException) Invalid format: "2021-11-28 00:00:00.000" is malformed at "21-11-28 00:00:00.000"
    org.joda.time.format.DateTimeFormatter.parseDateTime():899
    org.joda.time.DateMidnight.parse():152
    org.apache.drill.exec.test.generated.ProjectorGen212045.doSetup():185
    org.apache.drill.exec.test.generated.ProjectorGen212045.setup():107
    org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchemaFromInput():559
    org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.setupNewSchema():571
    org.apache.drill.exec.record.AbstractUnaryRecordBatch.innerNext():101
    org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.innerNext():144
    org.apache.drill.exec.record.AbstractRecordBatch.next():188
    org.apache.drill.exec.record.AbstractRecordBatch.next():128
    org.apache.drill.exec.record.AbstractRecordBatch.next():118
    org.apache.drill.exec.record.AbstractUnaryRecordBatch.innerNext():65
    org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.innerNext():144
    org.apache.drill.exec.record.AbstractRecordBatch.next():188
    org.apache.drill.exec.physical.impl.BaseRootExec.next():105
    org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext():83
    org.apache.drill.exec.physical.impl.BaseRootExec.next():95
    org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():325
    org.apache.drill.exec.work.fragment.FragmentExecutor$1.run():312
    java.security.AccessController.doPrivileged():-2
    javax.security.auth.Subject.doAs():422
    org.apache.hadoop.security.UserGroupInformation.doAs():1730
    org.apache.drill.exec.work.fragment.FragmentExecutor.run():312
    org.apache.drill.common.SelfCleaningRunnable.run():38
    java.util.concurrent.ThreadPoolExecutor.runWorker():1149
    java.util.concurrent.ThreadPoolExecutor$Worker.run():624
    java.lang.Thread.run():748 (state=,code=0)


r

Operating system and version:

nvm debug output:

nvm ls output:

How did you install nvm? (e.g. install script in readme, homebrew):

What steps did you perform?

What happened?

What did you expect to happen?

Is there anything in any of your profile files (.bashrc, .bash_profile, .zshrc, etc) that modifies the PATH?

If you are having installation issues, or getting "N/A", what does curl -I --compressed -v https://nodejs.org/dist/ print out?

Seems like an accidental issue?

I literally have no idea how I opened an issue by accident -- I looked away from my main screen for one second, and then this happened :|


Update screenshots

Screenshots need updating for the new DevOps experience.
For example, the last screenshot showing "My Hub" is under "Repos > My Hub"

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

ID: 14955ee9-29f2-46fe-3a8d-a42666f53ffc
Version Independent ID: 5d417cd0-a671-ee30-8fca-5f8b0addd328
Content: Develop a web extension for Azure DevOps Services
Content Source: docs/extend/get-started/node.md
Product: devops
Technology: devops-ecosystem
GitHub Login: @willsmythe
Microsoft Alias: wismythe

Hi @loundy, Thanks for your feedback. We'll be improving the extension docs in the near future (Q3, Q4), which will include updated screenshots. Thanks again.


Option to run multiple sim indices per job

New num_sims option for xfaster run and xfaster submit that runs the prerequisite checkpoints once, then repeats the data, bandpowers and likelihood checkpoints, incrementing the value of sim_index_default each time. This option can be used for simple sets of sims where all of the input data are determined by the sim_data_components and sim_index_default options. More complex sim sets can be constructed using the XFasterJobGroup structure.
To run 100 simple sims efficiently, run one sim with sim_index_default=0 to pre-compute the prerequisite checkpoints, then split the remaining 99 sims into multiple jobs by setting the sim_index_default and num_sims options to loop over subsets of the full range of sim indices.  For example, running the rest of the sims in a single job can be done with options sim_index_default=1 and num_sims=99.

Tested with #31.


Fix ldflag logic

The condition should test for go1.4 and use ${key} ${val}, while go1.5 and go1.6 should use ${key}=${val}.
The actual test could consider versions prior to go1.4, but I think we don't care about them, i.e., we require go1.4+?

[test]
@bparees PTAL

[merge]


better verbose mode?

would love to see what exactly is getting installed in verbose mode

you can look at those files yourself!

now you can see it all

thank you!


Distance function returns 0 between two locations

Hi,
When i use two locations taken from google maps to calculate distance it always give me 0, not sure why
here is my code example
// -26.275406, 27.811755 from google maps
      let thisLocation = new geolocation.Location();
      thisLocation.latitude = "-26.275406";
      thisLocation.longitude = "27.811755";

      //  -26.281879, 27.772300 from google maps
      let myLocation = new geolocation.Location();
      myLocation.latitude = "-26.281879";
      myLocation.longitude = "27.772300";

      let dist = Math.floor(geolocation.distance(myLocation, thisLocation));
      this.locationDistance = `DIstance is ${dist} meters away.`;

i am using nativescript vue
testing on my android device

I have faced this issue as well, i get 0 when i calculate the distance.

I wasn't getting very accurate distances using this function either. I use this to calculate the distance in KM, then times the result by 1000
`    calculateKmDistance(loc1, loc2): number {
    const R = 6371.0710; // Radius of the Earth in Km
    const r1 = loc1.latitude * (Math.PI / 180); // Convert degrees to radians
    const r2 = loc2.latitude * (Math.PI / 180); // Convert degrees to radians
    const d1 = r2 - r1; // Radian difference (latitudes)
    const d2 = (loc2.longitude - loc1.longitude) * (Math.PI / 180); // Radian difference (longitudes)

    return 2 * R * Math.asin(Math.sqrt(Math.sin(d1 / 2) *
        Math.sin(d1 / 2) + Math.cos(r1) * Math.cos(r2) *
        Math.sin(d2 / 2) * Math.sin(d2 / 2)));
}`

Do you still need to times the result by 1000 to get it in KM?

I wasn't getting very accurate distances using this function either. I use this to calculate the distance in KM, then times the result by 1000
calculateKmDistance(loc1, loc2): number {

    const R = 6371.0710; // Radius of the Earth in Km
    const r1 = loc1.latitude * (Math.PI / 180); // Convert degrees to radians
    const r2 = loc2.latitude * (Math.PI / 180); // Convert degrees to radians
    const d1 = r2 - r1; // Radian difference (latitudes)
    const d2 = (loc2.longitude - loc1.longitude) * (Math.PI / 180); // Radian difference (longitudes)

    return 2 * R * Math.asin(Math.sqrt(Math.sin(d1 / 2) *
        Math.sin(d1 / 2) + Math.cos(r1) * Math.cos(r2) *
        Math.sin(d2 / 2) * Math.sin(d2 / 2)));
}

@alexonozor I don't think so, it should return the result in KM. I think / 1000 to get it in meters.


Get Payments

Added GetPayments
Removed .net9 to make tests runnable again due to an issue.

Hi @AlexHolly
Thanks for your PR again.
What was the problem with net9?

I use .net8.
When i run the tests it shows I need .net9
The current .NET SDK does not support targeting .NET 9.0.  Either target .NET 8.0 or lower, or use a version of the .NET SDK that supports .NET 9.0. Download the .NET SDK from https://aka.ms/dotnet/download

Ah ok I see. That's why. I thought it was a problem with some dependencies on net9.
So I change it back to use net9 for this PR.
Thanks!


MSBuild 17.1/17.2 not available on windows-latest/windows2022

Latest desktop preview version:

Based on this issue, this was recently available - https://github.com/microsoft/setup-msbuild/issues/73

Seems like I need to use this: https://docs.microsoft.com/en-us/visualstudio/install/advanced-build-tools-container?view=vs-2022

Hi @HavenDV the hosted agents do not yet have the updated 17.1 release (https://github.com/actions/virtual-environments/blob/main/images/win/Windows2022-Readme.md#visual-studio-enterprise-2022).  17.2 is in preview and wouldn't be on the release agents yet.
Is something specifically needed from the 17.1/17.2 releases for MSBuild for you that is a blocker?

Is something specifically needed from the 17.1/17.2 releases for MSBuild for you that is a blocker?

This is a very specific problem. MSBuild 17.0 is not able to build a library with a source generator that has a generation time dependency as a .Net Standard 1.0 library (and therefore contains .Net Standard 1.0 dependencies in the analyzers/dotnet/cs folder). 17.2 successfully builds it. I don't know in which version exactly they solved it.

Solution, in case anyone stumbles upon this issue while looking for a solution to theirs:
runs-on: windows-latest

    - name: Download build tools
      run: Invoke-webrequest
        -uri https://aka.ms/vs/17/pre/vs_buildtools.exe
        -OutFile vs_buildtools.exe
      shell: powershell

    - name: Install build tools
      run: .\vs_buildtools.exe
        --wait
        --norestart
        --passive
        --installPath "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools"
        --includeOptional
        --includeRecommended
        --add Microsoft.VisualStudio.Workload.ManagedDesktopBuildTools
        --add Microsoft.VisualStudio.Workload.MSBuildTools
        --add Microsoft.VisualStudio.Workload.NativeDesktop
        --add Microsoft.VisualStudio.Workload.NetCoreTools
      shell: cmd

    - name: Setup MSBuild
      uses<EMAIL_ADDRESS>      with:
        vs-prerelease: ${{ inputs.vs-prerelease }}

I think the setup arguments can be greatly optimized for your specific task, but this works for me.
Based on:
https://gist.github.com/tushartushar/f327abdba580511c0a996db4f4faf0d8
https://docs.microsoft.com/en-us/visualstudio/install/advanced-build-tools-container?view=vs-2022
It's the ru-RU page, but it contains the preview link: https://docs.microsoft.com/ru-ru/visualstudio/install/advanced-build-tools-container?view=vs-2022

Thanks for the added info @HavenDV!


Added json command to CLI and fixed an argument parsing error

I added the json command to the CLI to export matches in json format, and while testing the new function, I noticed that the --force-analyze argument is parsed incorrectly in the xlsx command and fixed it.

Thanks!


Update Diff DB labels and links

As it was simple to implement, this PR fixes #1137.
This PR:

adds a link to access the Differentiae Database on the Chant Edit page

Since we have more space below our Diff DB field than OldCantus did, I added a whole sentence ("For a list of Differentia IDs, refer to the Differentiae Database") rather than an abbreviated "Diff. IDs: differentiaedatabase.ca".
This link points to https://differentiaedatabase.ca/index rather than the homepage

The label for the field has been standardized. It now reads "Differentiae Database:" in both places, rather than "Differentia DB:" and "Differentia Database"

Edit page:

Create page:

Looks good to me!


cmake in macOS >=10.14.x fails to automatically identify C++ compiler

cmake in macOS >=10.14.x fails to automatically identify C++ compiler leading to the failure of the HElib build.
A potential workaround is to explicitly pass the compiler location when invoking cmake.

Fixed. in commit 16871cc


Metadata error in Problems/Output tab

I started using the extension but I am getting an error in the Problems tab:
Table not found or Model not found
This is also showing in the Output tab:
error while getting table metadata: Not found: Dataset ...
I guess it is because I don't have access to the metadata dataset.
Is there a way to skip this and to not flag the files as having errors?
Thank you,

Can you clarify for which tables you receive Table not found and Model not found errors?
Were these tables created by dbt run or manually?

Yes, the tables were created by dbt run.
I am getting errors for the ref(erenced tables) in a model.
ex: inter model, base table is not found
with hc_currency as (
    select * from {{ ref('base_vro__player_transaction') }} {{ project_ci_limit() }} --no qa
),

Hi @fdawans, thank you for feedback.
I tried to reproduce locally. Could you attach the project structure? Also could you provide content of inter_vro__hard_currency_transaction and base_vro__player_transaction models?
Did you use dbt alias config for your models?
Also if you can find your table (base_vro__player_transaction_audit) by name in dataset?

Hi @fdawans,
We fixed a problem related to dbt aliases. Probably it is the cause of your issue.
Please update to the latest version and report here if it is not resolved.


📝 Rebuild any documents using the directive

This change addresses #1 only partially and as such it needs a
follow-up.
The solution is suboptimal because it forces Sphinx to rebuild
documents regardless of whether the news fragments have changed in any
way.
OTOH, using BuildEnvironment.note_dependency() would be rather
useless in TowncrierDraftEntriesDirective.run() since it'd only make
it depend on the existing fragment changes (that almost never happens)
and would ignore any new fragments appearing on disk (because the only
dependencies declared would be the ones that existed at the time of
the first directive run).
The next step would be implementing tracking of the fragments outside
of the directive using 'env-get-outdated' combined with tracking of
the documents that use the directive via BuildEnvironment custom
attribute and EnvironmentCollector for the Sphinx parallel mode
support.
Refs:

https://github.com/sphinx-contrib/sphinxcontrib-towncrier/issues/1
https://github.com/sphinx-doc/sphinx/issues/8040

@ewjoachim mind taking a rough look? It's a workaround-ish thingy that addresses #1 in a non-granular way. I think I'll implement a better solution as a part of #8 sometime later, once I figure out how to make it right...

I'm off for a week, sorry :) Feel free to move on, I'll review later, even post-merge.

@ewjoachim ah, sure :) Have a great vacation!
It's just a one-liner, though. I just wanted to make sure you see the current motivation.


⚠ Bofrost.de has degraded performance

In c8cc0a0, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1384 ms

Resolved: Bofrost.de performance has improved in 37feff2.


Document how to update local docker images

The magic command should be documented

docker image ls --format "{{.Repository}}:{{.Tag}}" | grep amazeeio/ | grep -v none | xargs -n1 docker pull | cat

This will be released here : https://github.com/amazeeio/pygmy/pull/21


fix compatibility with PostgreSQL 9.2

@giallu @rvianello : this should supercede #1183
I've included all of @giallu's changes and also got the standard build files working.
I believe this should work on versions of PostgreSQL from 9.2 to 9.6

thanks, the changes look good to me.
what tool did you use for the C code layout style?

crap, I didn't notice that the formatting was also part of the change. Though that's nice, it doesn't make reviewing a lot easier.
I do that with clang-format. I have both emacs and atom (the two editors I use) set up to automatically run clang-format after every save. The format file is in $RDBASE/.clang-format

I will check if I can quickly configure emacs to use clang-format on my linux box.


Add PPO with clipping objective

Hey Magnus,
Thanks a lot. I think I read in your comments that training performance wasn't very good with clipping. Do you still think it is worthwhile to add to the code? Let me know your thinking. Is it possible that the paper use another method in combination with clipping that made it perform well?
Pat

Hey Pat,
so I first thought it converges slower, but I am able to get >3500 reward for hopper environment after ~10k episodes. So that should be fine I think.
I would include it because that is actually the method they consider as best in the PPO paper.
There are some tweaks which seem to be better for more complex environments.

Lowering learning rate after sampling (very first step of optimization) because PPO clipping objective has no effect there. the PG ratio is always 1 at the first step of optimization. After that the clipping objective is "active" and learning rate can be increased.
Using an adaptive learning rate similar to [1]. They mention in the paper that they use that for RoboSchool I think.

[1] https://github.com/magnusja/homework/blob/master/hw4/main.py#L353

Is this the paper you're referring to:
https://arxiv.org/pdf/1707.06347.pdf

Exactly!

Ok, will review tomorrow. Thanks!
On Thu, Feb 22, 2018 at 6:52 PM, Magnus<EMAIL_ADDRESS>wrote:

Exactly!
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/pat-coady/trpo/pull/15#issuecomment-367862845, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AWdFxAt2rtDgpu_qo1xjPxlLjJ-dutrzks5tXf2rgaJpZM4SCr9U
.

Very sorry for the delay. Thanks a lot for the improvement.

If you are still interested, can you resubmit PR? I merged with another change that caused some problems. So I had to revert both. I can't seem to find just your change to merge.

What happened? I am utterly confused. Github says that you pushed into MY repo: https://github.com/magnusja/ppo
How is that even possible?

I'm far from GitHub expert, but I wouldn't think that's possible. Maybe you pulled my changes before I reverted?

I just checked that and apparently one has write access to every forked repo, which is a little weird.
So for some reason, you pushed into my repo. It was certainly not me :D
I will try to revert and open a new PR.

Sorry about that! I have no idea how I might have pushed a change while
merging something into my repo. Odd.
On Sat, Mar 31, 2018 at 3:32 PM, Magnus<EMAIL_ADDRESS>wrote:

I just checked that and apparently one has write access to every forked
repo, which is a little weird.
So for some reason, you pushed into my repo. It was certainly not me :D
I will try to revert and open a new PR.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/pat-coady/trpo/pull/15#issuecomment-377717574, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AWdFxEOO16JiO6ZwHdnXPSILpjvVy_48ks5tj9nggaJpZM4SCr9U
.

Hmm ok unfortunately my commit is already in your history, hence I cannot open a new PR: https://github.com/pat-coady/trpo/compare/master...magnusja:master

Ok, I'll do a little stack overflow search and see how I can merge that
commit.
On Sat, Mar 31, 2018 at 3:46 PM, Magnus<EMAIL_ADDRESS>wrote:

Hmm ok unfortunately my commit is already in your history, hence I cannot
open a new PR: master...magnusja:master
https://github.com/pat-coady/trpo/compare/master...magnusja:master
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/pat-coady/trpo/pull/15#issuecomment-377718428, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AWdFxNZzfBxiVCQLI4sU8l863hMibSkEks5tj90agaJpZM4SCr9U
.

Ok, I was able to grab that commit. Everything is all set. Thanks for your
contribution. And sorry for the trouble.
On Sat, Mar 31, 2018 at 3:46 PM, Magnus<EMAIL_ADDRESS>wrote:

Hmm ok unfortunately my commit is already in your history, hence I cannot
open a new PR: master...magnusja:master
https://github.com/pat-coady/trpo/compare/master...magnusja:master
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/pat-coady/trpo/pull/15#issuecomment-377718428, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AWdFxNZzfBxiVCQLI4sU8l863hMibSkEks5tj90agaJpZM4SCr9U
.


Dockerize Vue.js App | Example docker file with Nginx causes 404 issues

The Example provided in the page "Dockerize Vue.js App" with Nginx, causes 404 issues for the deployed app. I think we need to add a custom nginx conf file.
link: https://vuejs.org/v2/cookbook/dockerize-vuejs-app.html#Real-World-Example
The Nginx 404 is displayed only when directly accessing a route other than '/'
So its displayed only when directly accessing the example.com/articles from the browser URL but works fine when going to example.com

I ran into this as well. The example seems to be missing some nginx config to try index.html
https://stackoverflow.com/questions/47655869/how-to-use-vue-js-with-nginx


Add requested context to issue template

Issue forms have better UX, for example: https://github.com/PyO3/pyo3/issues/new?assignees=&labels=bug&template=bug_report.yml

I did consider that... but I kind of intentionally wanted to keep the issue template very lightweight, and I worry that issue forms introduces more mental overhead.

Sure, that's fine.


[HW] Ankit Dey Purkayastha

Name: Ankit Dey Purkayastha
Email<EMAIL_ADDRESS>Linkedin Profile: https://www.linkedin.com/in/ankitdeypurkayastha/
Attach the homework step I screenshots below:

Attach the homework step II screenshots below:

Hey Ankit Dey Purkayastha, great job! Congrats! Here is your badge! https://api.badgr.io/public/assertions/Ai21sJ-ISRaYhoLFqqPzGw


Can't build on local for deploy on a server

Describe the bug
Mi intention is to deploy Dejavu in a server. This server is only accessible from a VPN, so I can't share the connection.
I'm trying to execute yarn build:dejavu hoping to have a dist folder to deploy into an Apache HTTPD Server. Maybe I'm wrong about how to deploy it, I'm not sure. But could you tell me if it's possible to do? Or should I deploy it with docker?
Dejavu Version
3.4.3
To Reproduce
yarn build:dejavu
Expected behavior
I expect to have a dist folder to deploy into an Apache HTTPD Server.
Desktop (please complete the following information):

OS: Ubuntu 20.04

I face that when dejavu starts, it's listening to <IP_ADDRESS>:1358 address. Maybe a solution is to change it in order to listen to 0.0.00.:1358
Can I change it from any config file?

Well, I changed from package.json of dejavu-main subproject to indicate in the scripts that starts the application with the property --host <IP_ADDRESS>
This way I can access from my browser, but I'm getting an error:

Any idea?

@marcgise here are the steps to get production ready build

yarn build:dejavu:app from the root folder
copy cd packages/dejavu-main/dist/app/ folder to your apache server hosting dir

Well, I finally get it... Adding a property in the webpack.config.js file:
devServer: {
compress: true,
public: "myserver.es"
}

@marcgise that will just start it in dev mode.
To run in production make sure you create build and follow the above steps.


Research on DialoGPT

@MDheeraj500 , @STAVAN-2710
Description
We are progressing to the integration phase for our project (the next step following the setting up of the GitHub repo). This task involves working with the pre-trained conversational model DialoGPT and integrating it with EmoBERTa for emotion recognition.

Learn to utilize the APIs for both models and explore how they can be integrated into environments like Google Colab or Kaggle.
Focus on understanding DialoGPT’s dialogue generation capabilities, and how EmoBERTa can enhance the assistant’s emotional intelligence.

Next  Steps

Explore API documentation for DialoGPT and EmoBERTa.
Experiment with Colab/Kaggle to understand model integration and interaction.

Let's create a project management Kanban Board and move this issue to the board in the "In-progress" status and close this issue.


Package version issues following image rebuild

Rebuilding all images has caused issues with the following packages for auth-github and backend
jijna2
itsdangerous
werkzeug
docker-compose up fails for both of them.

It looks like these are dependencies of Flask (or maybe something else) and they weren't included in either <requirements.txt> files for these services. So when Flask is installed the latest versions of these dependencies are also installed and that results in conflict somewhere in the code.
A combination of trial and error and reading change logs shows the following (older) versions of these packages results in the services being able to run i.e. docker-compose up doesn't fail:
jijna2==3.0.3
itsdangerous==2.0.1
werkzeug==2.0.3

Workaround implemented by adding the versions of the packages which enable the services to run.
A better solution would be to use the up-to-date versions of the packages with the subsequent relevant code changes implemented - creating new issue for a better solution and closing this one.


fix: disable updatesitemaps again

What new features does this PR implement?
see #4795 - redoing previous PR to disable Update Site Maps prior to release (chicken or egg problem) - broken production site breaks UpdateSiteMaps action, so can't fix production site.

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


Asp .net core 3 preview 3 - some StateHasChanged cause "Cannot access a disposed object. Object name: 'IServiceProvider'."

Environment
.net core 3 preview 3 razor components
Describe the bug
I call existing c# code through my razor component. This code is an old school 4.0 code (but class are recompiled to .NET standard), which call wcf services and raise an event when the result are here. My component suscribe to this event to do a StateHasChanged for refresh the UI.
When i call the StateHasChanged, not an each place but often, i now have an exception "Cannot access a disposed object. Object name: 'IServiceProvider'."
To Reproduce
Unfortunately i was unable to reproduce the bug with the starter template. It's complicated to reproduce because My app execute existing c# code (a lot of code, with call to wcf services), and i can't put the entire project on internet because is the property of my company.
Additional context
This bug appear after the migration preview 2 -> preview 3.
I thinks it's related to the "prerendering" functionnality, I already open a ticket regarding JsRuntime here : https://github.com/aspnet/AspNetCore/issues/8327
So, in the same way of JsRuntime, i wrap my call with try catch and it seems OK (my UI is refresh)
this.Invoke(() =>
{
try
{
this.StateHasChanged();
}
catch (Exception ex)
{
//to prevent app crash when bug appear
}
});

Thanks for contacting us, @julienGrd.
You have to override the Dispose() method and unsubscribe from the set of notifications.

@mkArtakMSFT Sorry, can you maybe elaborate? I'm having the exact same issue. What do I need to dispose of? What notifications? Can you give an example?
For me, this is happening if I refresh a page and could have something to do with making a JSON request, but the error is on StateHasChanged and doesn't really give any clues (at least that I can see) as to what is wrong.
This is the callstack, doesn't seem to help me, but I'm assuming you're smarter than I.
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.ThrowHelper.ThrowObjectDisposedException()    at Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceProviderEngineScope.GetService(Type serviceType)    at Microsoft.AspNetCore.Components.ComponentFactory.<>c__DisplayClass6_0.<CreateInitializer>b__2(IComponent instance)    at Microsoft.AspNetCore.Components.ComponentFactory.PerformPropertyInjection(IComponent instance)    at Microsoft.AspNetCore.Components.ComponentFactory.InstantiateComponent(Type componentType)    at Microsoft.AspNetCore.Components.Rendering.Renderer.InstantiateChildComponentOnFrame(RenderTreeFrame& frame, Int32 parentComponentId)    at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.InitializeNewComponentFrame(DiffContext& diffContext, Int32 frameIndex)    at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.InitializeNewSubtree(DiffContext& diffContext, Int32 frameIndex)    at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.InsertNewFrame(DiffContext& diffContext, Int32 newFrameIndex)    at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.AppendDiffEntriesForRange(DiffContext& diffContext, Int32 oldStartIndex, Int32 oldEndIndexExcl, Int32 newStartIndex, Int32 newEndIndexExcl)    at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.AppendDiffEntriesForFramesWithSameSequence(DiffContext& diffContext, Int32 oldFrameIndex, Int32 newFrameIndex)    at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.AppendDiffEntriesForRange(DiffContext& diffContext, Int32 oldStartIndex, Int32 oldEndIndexExcl, Int32 newStartIndex, Int32 newEndIndexExcl)    at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.AppendDiffEntriesForFramesWithSameSequence(DiffContext& diffContext, Int32 oldFrameIndex, Int32 newFrameIndex)    at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.AppendDiffEntriesForRange(DiffContext& diffContext, Int32 oldStartIndex, Int32 oldEndIndexExcl, Int32 newStartIndex, Int32 newEndIndexExcl)    at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.AppendDiffEntriesForFramesWithSameSequence(DiffContext& diffContext, Int32 oldFrameIndex, Int32 newFrameIndex)    at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.AppendDiffEntriesForRange(DiffContext& diffContext, Int32 oldStartIndex, Int32 oldEndIndexExcl, Int32 newStartIndex, Int32 newEndIndexExcl)    at Microsoft.AspNetCore.Components.RenderTree.RenderTreeDiffBuilder.ComputeDiff(Renderer renderer, RenderBatchBuilder batchBuilder, Int32 componentId, ArrayRange1 oldTree, ArrayRange1 newTree)    at Microsoft.AspNetCore.Components.Rendering.ComponentState.RenderIntoBatch(RenderBatchBuilder batchBuilder, RenderFragment renderFragment)    at Microsoft.AspNetCore.Components.Rendering.Renderer.RenderInExistingBatch(RenderQueueEntry renderQueueEntry)    at Microsoft.AspNetCore.Components.Rendering.Renderer.ProcessRenderQueue()    at Microsoft.AspNetCore.Components.Rendering.Renderer.AddToRenderQueue(Int32 componentId, RenderFragment renderFragment)    at Microsoft.AspNetCore.Components.RenderHandle.Render(RenderFragment renderFragment)    at Microsoft.AspNetCore.Components.ComponentBase.StateHasChanged()
Also, this is happening inside of a method that gets called OnInit of the page that does a search. When the page is refreshed, just prior to the page refreshing (pretty sure it's before onunload) this method is getting called. The stack trace has nothing before it. It just says [Resume Async Method]. Then after I continue passed the error, method gets called again.
If I put breakpoints, there is no error (however I do lose my session, so that's something else I need to figure out and is probably unrelated). Seems hit or miss when breakpoints get involved.


[WIP] Include 'digest' in release stream JSON

Automating release signing will be simpler if the release stream
includes the digest information as well.
Work in progress. I'm not sure what to do about digest, _ := c.digestForArtifacts(latest.Name)
I could use some help with that part.

/hold

Also it would be cool if we could include the canonical client download location in there
clientsDownloadURL: https://mirror.openshift.com/pub/openshift-v4/clients/ocp/${NAME}
My initial thought on that, if we change that location in the future then we'd have to update the code as well. Thoughts on that?
Also clientsDownloadURL is specific. We also include the installers in there. I'm open to a better name, and not offended if you shoot this idea down entirely @smarterclayton


Create tool to debug tf frames coming from multiple publishers

An issue we've run into several times is when multiple different nodes are publishing a tf frame.  This often manifests as a frame shifting or rotating in periodic intervals in visualization tools.  While there's nothing illegal about a frame coming from multiple different sources, in practice this is very rare and almost never a useful case.
It'd be nice to have a node or a script that could run and alert you when different sources have published a frame and also identify what those sources are.
@matt-attack @kriskozak

I believe the roswtf plugin does this, but it's a tool, not a monitoring node.

I messed around with roswtf on my system and it appears that it does indicate if there are multiple publishers

Oh, that's nice.  Does it indicate who the publishers are?  I've always had an issue with tf_monitor that it never seemed to be able to identify who was publishing what...

It appears so.
analyzing graph...
... done analyzing graph
running graph rules...
... done running graph rules
running tf checks, this will take a second...
... tf checks complete

Online checks summary:

Found 1 error(s).

ERROR TF multiple authority contention:
 * node [/static_tf2] publishing transform [/map] with parent [/far_field] already published by node [/static_tf]
 * node [/static_tf] publishing transform [/map] with parent [/far_field] already published by node [/static_tf2]


Fix warnings and increase demo text pool size

Fix three warnings added in fc5df2c, and increase the text pool size in
the demo. This would frequently be overflowed, even just by building
with the default settings and expanding the log.

:ship:


Can this be used to spellcheck symbol names in code, not just documentation and comments?

For my project (written in Rust and a web component in TypeScript and Vue), I am interested in adding a CI checker to detect spelling errors in the variable/function/etc. names that people contribute, perhaps with a global whitelist file to squelch false positives. Is this tool capable of that, or does it only target documentation and comments as I could glean from the project description?

Hey, thanks for reaching out!
This will eventually meander into scope of cargo-spellcheck, but this is not an easy problem. Variable names are not necessarily predictable and abbreviations are possible, i.e impl_foo. And that is the main issue for implementing that issue besides a general lack of time.
If you are interested, I'd be happy to mentor you implementing it!

Good to know where the project is headed. My hands are full so I unfortunately can't help with this, but I'll be sure to keep an eye on the project into the future. Thanks for creating it.

Closing this in favor of #208


Add option to enable/disable logging setup from cli.

This can be closed as CLI improvements has been merged. Logging levels can be set for enabling and disabling certain logs.


fix: get the makefile deployments target working on darwin

Signed-off-by: Cosmin Cojocar<EMAIL_ADDRESS>
What type of PR is this?

What this PR does / why we need it:
Which issue(s) this PR fixes:

Does this PR have test?

Special notes for your reviewer:
Does this PR introduce a user-facing change?

/release-note-none


index.js: get(key) method in LRUCache class return -1,  it's incorrect

OK.

In main function return 0 or exit(0) are same but if you write exit(0) in different function then you program will exit from that position.
returning different values like return 1 or return -1 means that program is returning error(Because in C/C++ haven't boolean variable will return -1 means that program is returning error).

Should return null, because if return -1 there may be case key = -1, return -1 that is not true for js.


Swipe right animation

Describe the project you want to add with tech stack

This project ciontains a animation which tells the user to swipe right.It  can be used by many  websites.Can you assign this task to me?
Expected behavior

Screenshots (optional)

Additional context (optional )

@MohitGupta121 ,
@TusharKesarwani Can you assign this task to me?


mini-batch gradient accumulation

Allow users to specify the number of mini batches to perform gradient accumulation (default=1) to allow to run on small memory GPUs with large effective mini batch size

Done in https://github.com/rbalestr-lab/stable-SSL/pull/104


Write a Perl program to check even or odd number

Description
Write a Perl program to check even or odd number
Input  : 3
Output : Odd Number

How to contribute

Save the solution in check_even_or_odd_number.pl file
Add check_even_or_odd_number.pl file in check-even-or-odd-number folder

!assign

Hey @smilewithkhushi,
This issue has been assigned to you for more than 15 days.
We are unassigning you from this issue.
If you are still interested in contributing to this issue, please get auto-assigned on the issue by commenting !assign again.
Thanks for your contributions :)


add adambra.com

new disposable domain from https://temp-mail.org/en/

Thanks, since temp-mail.org is automated, it will be automatically harvested.


Allow for nested structure

Right now, the build system expects a fairly rigid structure for your files:
// template files
- templates
    - layers
        - ...
    - styles
        - style-template-1.js
        - style-template-2.js

// built files
- styles
    - style-1.json
    - style-2.json

In this structure, the style templates exist at only one flat level inside of a styles (or otherwise named) directory and will output to a similarly structured directory. They cannot nest deeper inside of more directories used for organization inside of this.
We want to allow for different directory structures for any amount of nesting that a user wants where the built directory structure will reflect the structure of the template files directory. For example:
// template files
- templates
    - layers
        - ...
    - styles
        - category-a
            - style-template-1.js
            - style-template-2.js
        - category-b
            - style-template-3.js
            - style-template-4.js

// built files
- styles
    - category-a
        - style-1.json
        - style-2.json
    - category-b
        - style-3.json
        - style-4.json

This was done in https://github.com/stamen/mapbox-gl-style-build/pull/4


Add docs about seeding random generator

I added a short note regarding seeding random number generator.  Feel free to reword or ignore if you don't think it is necessary!

Maybe a word about Random.self_init() as an example of how to seed the generator would also help? :)

Sure, I can add an example later today.

I added an example, did a little reorg where the seeding stuff is now in its own section, and added another header to the section so the TOC looks something like this:

thank you!


Support the null values in bloom_filter Spark aggregate

Currently, the velox BloomFilterAggregate checks the input row and throws an exception if there are some null values in the row. So we need to be consistent with spark's behavior and ignore null values.
The spark  BloomFilterAggregate will Ignore null values. https://github.com/apache/spark/blob/6cdca10f148433664b3e2be6f655b0ddba817537/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/BloomFilterAggregate.scala#L180-L188
 override def update(buffer: BloomFilter, inputRow: InternalRow): BloomFilter = {
    val value = child.eval(inputRow)
    // Ignore null values.
    if (value == null) {
      return buffer
    }
    updater.update(buffer, value)
    buffer
  }

The unittest:
class VeloxBloomFilteAggregateFunctionsSuite extends VeloxWholeStageTransformerSuite {
  val funcId_bloom_filter_agg = new FunctionIdentifier("bloom_filter_agg")
  override protected val backend: String = "velox"
  override protected val resourcePath: String = "/tpch-data-parquet-velox"
  override protected val fileFormat: String = "parquet"
  val table = "bloomTable"

  protected def registerFunAndcCreatTable(): Unit ={
    val funcId_bloom_filter_agg = new FunctionIdentifier("bloom_filter_agg")
    // Register 'bloom_filter_agg'
    spark.sessionState.functionRegistry.registerFunction(funcId_bloom_filter_agg,
      new ExpressionInfo(classOf[BloomFilterAggregate].getName, "bloom_filter_agg"),
      (children: Seq[Expression]) => children.size match {
        case 1 => new BloomFilterAggregate(children.head)
        case 2 => new BloomFilterAggregate(children.head, children(1))
        case 3 => new BloomFilterAggregate(children.head, children(1), children(2))
      })
    val schema2 = new StructType().add("a2", IntegerType, nullable = true)
      .add("b2", LongType, nullable = true)
      .add("c2", IntegerType, nullable = true)
      .add("d2", IntegerType, nullable = true)
      .add("e2", IntegerType, nullable = true)
      .add("f2", IntegerType, nullable = true)
    val data2 = Seq(Seq(67, 17L, 45, 91, null, null),
      Seq(98, 63L, 0, 89, null, 40),
      Seq(null, null, 68, 75, 20, 19))
    val rdd2 = spark.sparkContext.parallelize(data2)
    val rddRow2 = rdd2.map(s => Row.fromSeq(s))
    spark.createDataFrame(rddRow2, schema2).write.saveAsTable(table)
  }

  protected def dropFunctionAndTable(): Unit ={
    spark.sessionState.functionRegistry.dropFunction(funcId_bloom_filter_agg)
    spark.sql(s"DROP TABLE IF EXISTS $table")
  }

  override def beforeAll(): Unit = {
    super.beforeAll()
    registerFunAndcCreatTable()
  }
  override def afterAll(): Unit = {
    dropFunctionAndTable()
    super.afterAll()
  }

  test("Test bloom_filter_agg with Nulls input") {
    spark.sql(
      s"""
       SELECT  bloom_filter_agg(b2) from $table
         """.stripMargin).show
  }

ping @marin-ma @jinchengchenghh Kindly reivew, thanks.

The bloom_filter_agg is opensource Spark internal function, all the first argument of it is wrapped by xxhash, so it won't be null.
But for bloom_filter_agg itself, it can accept null value as this PR shows.
This case may occur because they use it's internal Spark version which change the usage of the function.
We could accept this PR because it aligns with Spark function behavior.
What do you think? @rui-mo

Please also update the document https://github.com/facebookincubator/velox/blob/main/velox/docs/functions/spark/aggregate.rst?plain=1#L27

Please update the title to Support the null values in bloom_filter_agg Spark aggregate function

@jinchengchenghh @@rui-mo Kindly reivew, thanks.

@jinchengchenghh Thanks for your comment. It looks good to align with Spark's behavior.

@rui-mo @jinchengchenghh  PTAL.

@rui-mo @jinchengchenghh PTAL.

@weixiuli Thanks for iterating. I have no further comment.

Please also update the document https://github.com/facebookincubator/velox/blob/main/velox/docs/functions/spark/aggregate.rst?plain=1#L27

please note this comment

@mbasmanova Kindly reivew, thanks.

@weixiuli I googled for bloom_filter_agg Spark function, but nothing came up. Would you share a link to Spark documentation for this function? I'm trying to understand what has changed from the time this function was added to Velox and now. Was the original implementation incorrect? How can we ensure that this implementation is right?

@weixiuli I googled for bloom_filter_agg Spark function, but nothing came up. Would you share a link to Spark documentation for this function? I'm trying to understand what has changed from the time this function was added to Velox and now. Was the original implementation incorrect? How can we ensure that this implementation is right?

Thanks @mbasmanova  I've already described the differences between Velox and spark in BloomFilterAggregate at the beginning of PR, please take a look and the  the link to Spark documentation for this function  is
https://github.com/apache/spark/blob/6cdca10f148433664b3e2be6f655b0ddba817537/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/BloomFilterAggregate.scala#L180-L188

@weixiuli I googled for bloom_filter_agg Spark function, but nothing came up. Would you share a link to Spark documentation for this function? I'm trying to understand what has changed from the time this function was added to Velox and now. Was the original implementation incorrect? How can we ensure that this implementation is right?

Thanks @mbasmanova I've already described the differences between Velox and spark in BloomFilterAggregate at the beginning of PR, please take a look and the the link to Spark documentation for this function is https://github.com/apache/spark/blob/6cdca10f148433664b3e2be6f655b0ddba817537/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/BloomFilterAggregate.scala#L180-L188

@mbasmanova PTAL.

@weixiuli

Would you share a link to Spark documentation for this function? I'm trying to understand what has changed from the time this function was added to Velox and now. Was the original implementation incorrect? How can we ensure that this implementation is right?

Would you answer all of these questions? The link you provided points to some code in Spark. Code is not documentation.

Would you answer all of these questions? The link you provided points to some code in Spark. Code is not documentation.

The Spark BloomFilterAggregate document can refer to https://books.japila.pl/spark-sql-internals/expressions/BloomFilterAggregate/

@mbasmanova Kindly review, thanks.

@mbasmanova  Could you help me review this pr again, thanks.

@weixiuli I was out sick last week. I'm back today, but still recovering. Would you rebase this PR? I'll take a look sometime this week.

@mbasmanova PTAL.


how to manually occupy all gpu memory like tensorflow?

MxNet is excellent on memory saving. But is there a way to manually occupy all gpu memory like tensorflow?

I think MXNet allocates the required memory, there is no option to forcefully occupy full memory.
Can you please let me know, why would this be required?

Thanks for replying me : )
For example, I have a GPU card with 12GB memory and one of my running programs occupies 11.5GB of it. Besides, there are several dynamic memory allocations in my codes.
If I accidentally run another program on the same GPU card, both of the programs will report "Out of Memory". So, I wonder whether there is a safer way to solve this problem.

not that I am aware, you can specify which GPU to use by using mx.gpu(i) where i is your device index.

@kaleidoscopical I think there is no way to forcefully occupy full memory.
@indhub can you close the issue or remove the [Question][Pending Requester Info] tags and add a [Feature Request] tag?

Agree, there is no way to forcefully occupy memory.


cannot set proxy for a workflow

Hi, it seems that this action does not respect the env proxy settings and you cannot set https_proxy for this workflow.
Its prevents running on selfhosted runners
Warning: Unexpected input(s) 'https_proxy', valid inputs are ['app-id', 'app_id', 'private-key', 'private_key', 'owner', 'repositories', 'skip-token-revoke', 'skip_token_revoke', 'github-api-url']

I haven't implemented a proxy input for actions myself yet, can you point to actions that have done it for reference? Can you tell if there is a certain conventions that is recommended?
Our action is built on the JavaScript Octokit, proxies are supported like this for Node usage:
https://github.com/octokit/octokit.js?tab=readme-ov-file#proxy-servers-nodejs-only
Pull request welcome by the way 👋🏼

I ended up using peter-murray/workflow-application-token-action action with https_proxy:

@gr2m It would be great if you could look at look at adding proxy support, any plans for that? The other action mentioned here looks like a good one to look at.

I'm working on this action as time permits, and time is very limited right now. I can always review a pull request if you need it fast 😅

Preliminary proxy support has been added in https://github.com/actions/create-github-app-token/pull/102 (branch 99-proxy). Could somebody please test the action using actions/create-github-app-token@99-proxy on a self hosted runner to verify that it is working as intended? No need to add a new input. The action will get the proxy URL from the environment variables described here.

@parkerbxyz Thanks for that! I have tested your branch and it works fine here.

I have gave it a try and token generation works! But it gives warning, it would be nice to add https_proxy to expected values and put it in readme.md
Unexpected input(s) 'https_proxy', valid inputs are ['app-id', 'app_id', 'private-key', 'private_key', 'owner', 'repositories', 'skip-token-revoke', 'skip_token_revoke', 'github-api-url']

I have gave it a try and token generation works! But it gives warning, it would be nice to add https_proxy to expected values and put it in readme.md Unexpected input(s) 'https_proxy', valid inputs are ['app-id', 'app_id', 'private-key', 'private_key', 'owner', 'repositories', 'skip-token-revoke', 'skip_token_revoke', 'github-api-url']

We do not support any proxy-related inputs, which is why you are receiving this warning. If you remove the line with https_proxy from your workflow file and try again, it should work without any additional configuration.
 - uses: actions/create-github-app-token@v1
   id: app-token
   with:
     app-id: ${{ vars.APP_ID }}
     private-key: ${{ secrets.PRIVATE_KEY }}
-    https_proxy: ${{ vars.HTTPS_PROXY }}

We automatically detect and handle proxy configurations using the environment variables described here.


Gear Bag Project: some JS errors

When loading the page initially, I see this message logged:
There was an error checking the gearbag.
Then, when adding a device to the gear bag, I see these JS errors:
Uncaught DataCloneError: Failed to execute 'add' on 'IDBObjectStore': An object could not be cloned.
Uncaught TypeError: Cannot read property 'removeClass' of undefined
When removing an item from the gear bag, I see this error:
Uncaught DataError: Failed to execute 'delete' on 'IDBObjectStore': The parameter is not a valid key.

Here is the pull request adressing this issue.

The TypeError and DataCloneErrors were caused because the requests were being passed data in a for in loop. For some reason it was adding a function to the end of the object and the add and delete methods were trying to add or delete the function after they had already added or deleted the object. That's why even though there was an error, the object was still added or deleted.
The TypeError was happening because of a element selector was returning undefined because the element it was looking for was already disposed.
And then the logged message was because a callback was checking for an error, but the function calling the callback was not passing it either a null value or an error.


issue templates: add YAML-based issue templates.

Add YAML-based GitHub issue templates, replacing the current issue templates.
References:

"Configuring issue templates for your repository".
"Syntax for GitHub's form schema".

Note: GitHub's form schema is currently in beta and subject to change.

See live example in my fork: asafkorem/Detox->Issues->New Issue.

ping @d4vidi 🙂

"Help us reproduce this issue" - make optional? 🤔

I thought about this several times, indeed this is probably the right thing.. changing 😓

Logs: Can we have the user paste logs and inject the "section" tags ourselves?

Unfortunately it seems not, I tried 😞

Done.
Also updated my fork's main branch with these changes.


touch creating files newer than system clock

I tried using the uutils and was compiling another piece of software from source with the ./configure && make && make install dance, when I got an error saying that the files were newer than system clock. Removing uutils from the PATH seemed to fix the issue. Is it a problem with touch?

Would it be possible for you to provide some step to reproduce?
It is too vague to be actionable now

Could you run this and paste the results?
strace uutils_touch /tmp/newfile

Yeah, sure :) Just to clarify, here's what I get when I try to compile sed from the tarball:
checking for a BSD-compatible install... /opt/uutils/bin/install -c
checking whether build environment is sane... configure: error: ls -t appears to fail.  Make sure there is not a broken
  alias in your environment
configure: error: newly created file is older than distributed files!
Check your system clock

Heres gnu t

GNU touch
openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=3041456, ...}) = 0
mmap(NULL, 3041456, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f6ca71d9000
close(3)                                = 0
openat(AT_FDCWD, "/tmp/newfile", O_WRONLY|O_CREAT|O_NOCTTY|O_NONBLOCK, 0666) = 3
dup2(3, 0)                              = 0
close(3)                                = 0
utimensat(0, NULL, NULL, 0)             = 0
close(0)                                = 0
close(1)                                = 0
close(2)                                = 0

uutils touch
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=3576, ...}) = 0
statx(0, NULL, AT_STATX_SYNC_AS_STAT, STATX_ALL, NULL) = -1 EFAULT (Bad address)
statx(AT_FDCWD, "/tmp/newfile", AT_STATX_SYNC_AS_STAT, STATX_ALL, 0x7ffd9867ea20) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/tmp/newfile", O_WRONLY|O_CREAT|O_TRUNC|O_CLOEXEC, 0666) = 3
fcntl(3, F_GETFD)                       = 0x1 (flags FD_CLOEXEC)
close(3)

Why is is calling a stat on /etc/localtime?

Problems I see:

uutils_touch is truncating files by default - that's a problem?
uutils_touch should also call utimensat()?

I'll run with code coverage to make sure I understand everything it is calling.

So, I think that, in order to proceed, we need to nail down whether this is a touch issue or rust library issue.
My quick look at the touch code reveals nothing that looks incorrect about its logic or implementation. The integration tests are testing (and passing) for time correctness when setting the file times. And I see no obvious correlation in the rust code to the lower-level syscall differences. A more specific failure at the command line level would be helpful to design a test and move forward. Is there a way to more exactly tease out the process and failure condition of the failing compilation?

Library issue that hard codes the truncate.
https://github.com/rust-lang/rust/blob/4ffb5c5954a304daf47a567b34e74e421db86d98/library/std/src/fs.rs#L357
#[stable(feature = "rust1", since = "1.0.0")]
    pub fn create<P: AsRef<Path>>(path: P) -> io::Result<File> {
        OpenOptions::new().write(true).create(true).truncate(true).open(path.as_ref())
    }

GNU discussion on their design decisions for what flags to set: https://lists.gnu.org/archive/html/bug-coreutils/2018-10/msg00340.html

I read through the referenced thread, but I don't see any direct discussion of the truncate option, unless it somehow equates with closing the file descriptor?
So, is the "truncate()" actually a problem? If it is, we could open the file using the same lower level code minus the truncate call (eg, OpenOptions::new().write(true).create(true).open(path.as_ref())). But, is it the cause of this issue?

Just following up - is it still true that touch truncates files instead of just updating their mtime?

@kevinburkemeter the line that truncates files only does so if touch believes the file doesn't actually exist.  There is a race condition in that the file could be created between the if condition and the call to File::create(), but generally you're not going to have a problem if you're using the utility normally.


Update README.md

Student correctly pointed out that the README it noted to reach out to PM and Instructor in the cohort help channel. Since we do not allow chat in help during sprint challenges, it seemed wise to change this :) I switched PM to TL as well

Thanks Melissa!! 👍


Bilinear gaussian blur using texture2D lookups

Ripped off http://rastergrid.com/blog/2010/09/efficient-gaussian-blur-with-linear-sampling/ for a faster gaussian blur (up to 2x, typically ~1.5x). I haven't replaced the existing one as I don't know whether this technique is supported on all (mobile) hardware.

 Thanks!


PLL_D2_CLK clock source support for LCD Peripheral (IDFGH-7961)

LCD hal driver only supports two clock sources PLL_F160M_CLK & XTAL_CLK. Is there any limitation with PLL_D2_CLK ? Can you please provide support for PLL_D2_CLK clock source. I can drive maximum of 8 MHz as LCD PCLK if use PLL_F160M_CLK  as source. If I configured as LCD PCLK as 10MHz got distortion in display.
LCD Controller: ILI9488 16bit (supports up to 20MHz) 480x320
Module: ESP32-S3-WROOM-1-N16R2
Graphical library: LVGL
LVGL buffers: Internal memory

Hi @rmshub
This commit enabled the support of PLL240MHz: https://github.com/espressif/esp-idf/commit/a149afb0c064dc1144d37e745c914cd6dc08b8e8

It is enabled only for RGB panel. I need support for i8080 bus also.

I can drive maximum of 8 MHz as LCD PCLK if use PLL_F160M_CLK as source. If I configured as LCD PCLK as 10MHz got distortion in display.

So have you checked the PCLK frequency is 10MHz indeed? The i80 bus resolution is 80MHz by default (if you select the PLL160M as the clock source). So if you set PCLK=10M, which means the divisor is 80/10=8, it resides in a valid range.
This example also uses 10MHz PCLK, but we haven't noticed the distortion.

My LCD is working properly up to 20 MHz clock with https://github.com/lovyan03/LovyanGFX.
Example: https://github.com/Makerfabs/Makerfabs-ESP32-S3-Parallel-TFT-with-Touch/blob/main/firmware/SD16_3.5/SD16_3.5.ino
LCD configuration can be found here: https://github.com/lovyan03/LovyanGFX/blob/master/src/lgfx/v1/platforms/esp32s3/Bus_Parallel16.cpp

LCD configuration can be found here: https://github.com/lovyan03/LovyanGFX/blob/master/src/lgfx/v1/platforms/esp32s3/Bus_Parallel16.cpp

I saw you allocated the i80 bus by esp_lcd_new_i80_bus, but after that, I didn't see you call the esp_lcd_new_panel_io_i80 to allocate an i80 device. So you're not using the esp-idf driver but writing your own one? If so, please take care of the clock calculation part, AFAIK, there is some hardware bug there. The driver used in esp-idf has somehow workaround that issue by not using the fractional clock, and also avoiding setting the lcd_clkcnt_n to 1.

20MHz lcd clock is working after updating esp-idf version to v5.0-beta1.


Add quic as a transport

IMO, it would be cool to add QUIC as a transport too already. I briefly skimmed through the go implementation: should be straight-forward (could also just be a boolean flag for now; same for the rust impl).
Orthogonal to that but while at it, the (go) dependencies should also be updated maybe.
In case you want, I have a branch with updated go-deps here: https://github.com/liamsi/libp2p-perf/tree/update-deps

:wave: Hi Ismail,
Cool to see this used by others as well.

IMO, it would be cool to add QUIC as a transport too already. I briefly skimmed through the go implementation: should be straight-forward (could also just be a boolean flag for now; same for the rust impl).

Indeed. Rust's libp2p implementation does not yet support QUIC, though it is in progress. Do you want to create a patch for the Golang implementation?

Orthogonal to that but while at it, the (go) dependencies should also be updated maybe. In case you want, I have a branch with updated go-deps here: https://github.com/liamsi/libp2p-perf/tree/update-deps

With https://github.com/mxinden/libp2p-perf/pull/33 @dependabot should now take care of it. If not, I will cherry-pick your patch, thanks.


UofT-DSI | Visualization - Assignment 4

What changes are you trying to make? (e.g. Adding or removing code, refactoring existing code, adding reports)

I am visualizing the same dataset using both Python programming and BI tools (such as PowerBI). The changes involve writing Python code for data visualization and creating interactive reports with BI tools to better tell the data story.

What did you learn from the changes you have made?

I learned how to use Python and BI tools to present different aspects of the data. With Python, I can create customized visualizations and handle data flexibly. With BI tools, I can create interactive reports and dashboards that make the data presentation more intuitive and easier to understand.

Was there another approach you were thinking about making? If so, what approach(es) were you thinking of?

I considered using Python combined with traditional HTML and CSS to create a visualization dashboard. This approach offers greater flexibility and customization, particularly in design and layout.

Were there any challenges? If so, what issue(s) did you face? How did you overcome it?

There were no significant challenges.

How were these changes tested?

The changes were tested by executing the code and reviewing the resulting plots and reports. The main method of testing was comparing the outputs with the expected visualizations to ensure they aligned with the data analysis objectives.

A reference to a related issue in your repository (if applicable)

N/A

Checklist

[x] I can confirm that my changes are working as intended

A4: Good job, PASS

Thank you, Amanda.


System.ArgumentOutOfRangeException in Orchard.Packaging.Extensions.PackageExtensions.ExtensionId

If "packageId" is in other format then expected then it throws exception.
My fix:
private static string ExtensionId(bool isTheme, string packageId)
{
if (isTheme && packageId.StartsWith(Services.PackagingSourceManager.GetExtensionPrefix(DefaultExtensionTypes.Theme)))
{
return packageId.Substring(Services.PackagingSourceManager.GetExtensionPrefix(DefaultExtensionTypes.Theme).Length);
}
else if (packageId.StartsWith(Services.PackagingSourceManager.GetExtensionPrefix(DefaultExtensionTypes.Module)))
{
return packageId.Substring(Services.PackagingSourceManager.GetExtensionPrefix(DefaultExtensionTypes.Module).Length);
}
else return packageId;
        //return isTheme ?
        //    packageId.Substring(Services.PackagingSourceManager.GetExtensionPrefix(DefaultExtensionTypes.Theme).Length) :
        //    packageId.Substring(Services.PackagingSourceManager.GetExtensionPrefix(DefaultExtensionTypes.Module).Length);

    }

Can you explain which scenario you are doing?

Well, in this case you should also change the IsTheme extension method.
Could you please give us your package name? We have a number of conventions in Orchard and following those is usually the best course of action, except you have a really good reason not to do so.

Orchard.Packaging.Extensions class PackageExtensions

I am pushing a fix as right now the search is almost completely broken but there might be some other issues when downloading themes this way.


Broken on Linux because of growl integration

The growl integration without any platform checking means the program won't run on Linux (tested) and probably won't run on windows(untested).
Consider wrapping growl functionality into a conditional and invoke it only on platforms that support it.
Also consider alternatives for Linux and Windows.

Fixed with commit 97dd0b526d97c097de9afb7b9dc6c74119dc4d5ea


Tell editors if they're short on battery when they start writing a new article.

Thought this might be a nice simple feature. Just to have some sort of dialog that says 'You've only got 2 minutes battery life left, grab your charger before getting started' or something like that.
Uses the Battery API in most modern browsers
https://davidwalsh.name/battery-api

Interesting.

This API got removed in Firefox, and in WebKit (Safari didn’t add it). Right now only Chrome supports it which probably isn't enough to justify the effort, so I'll close this.
To achieve a similar-ish outcome we could work towards having some auto-save feature, like suggested for #2199, #995.


[Event Request] - Table 210 "Job Journal Line" - OnValidate "Unit of Measure Code" - OnTestFieldUnitOfMeasureCode with Handled-Pattern

We need an event raiser within OnValidate-Trigger of field Table 210 "Job Journal Line" - "Unit of Measure Code" to handel Testfield by ourselves.
OLD CODE:
trigger OnValidate()
var
	Resource: Record Resource;
begin
	GetGLSetup;
	case Type of
		Type::Item:
			begin
				Item.Get("No.");
				"Qty. per Unit of Measure" := UOMMgt.GetQtyPerUnitOfMeasure(Item, "Unit of Measure Code");
				OnAfterAssignItemUoM(Rec, Item);
			end;
		Type::Resource:
			begin
				if CurrFieldNo <> FieldNo("Work Type Code") then
					if "Work Type Code" <> '' then begin
						WorkType.Get("Work Type Code");
						if WorkType."Unit of Measure Code" <> '' then
							TestField("Unit of Measure Code", WorkType."Unit of Measure Code");
					end else
						TestField("Work Type Code", '');

NEW CODE:
trigger OnValidate()
var
	Resource: Record Resource;
	// start kvspsa - new Variable
	IsHandled: Boolean;
	// stop kvspsa
begin
	GetGLSetup;
	case Type of
		Type::Item:
			begin
				Item.Get("No.");
				"Qty. per Unit of Measure" := UOMMgt.GetQtyPerUnitOfMeasure(Item, "Unit of Measure Code");
				OnAfterAssignItemUoM(Rec, Item);
			end;
		Type::Resource:
			begin
				if CurrFieldNo <> FieldNo("Work Type Code") then
					if "Work Type Code" <> '' then begin
						WorkType.Get("Work Type Code");
						if WorkType."Unit of Measure Code" <> '' then
							// start kvspsa - Event Raiser
							IsHandled := false;
							OnTestFieldUnitOfMeasureCode(Rec, WorkType, IsHandled);
							if not IsHandled then
							// stop kvspsa
								TestField("Unit of Measure Code", WorkType."Unit of Measure Code");
					end else
						TestField("Work Type Code", '');

NEW EVENT PUBLISHER:
[IntegrationEvent(false, false)]
local procedure OnTestFieldUnitOfMeasureCode(var JobJournalLine: Record "Job Journal Line"; WorkType: Record "Work Type"; var IsHandled: Boolean)
begin
end;

Missing Begin .. End after "if WorkType."Unit of Measure Code" <> '' then"
Corrected new Code:
trigger OnValidate()
var
	Resource: Record Resource;
	// start kvspsa - new Variable
	IsHandled: Boolean;
	// stop kvspsa
begin
	GetGLSetup;
	case Type of
		Type::Item:
			begin
				Item.Get("No.");
				"Qty. per Unit of Measure" := UOMMgt.GetQtyPerUnitOfMeasure(Item, "Unit of Measure Code");
				OnAfterAssignItemUoM(Rec, Item);
			end;
		Type::Resource:
			begin
				if CurrFieldNo <> FieldNo("Work Type Code") then
					if "Work Type Code" <> '' then begin
						WorkType.Get("Work Type Code");
						if WorkType."Unit of Measure Code" <> '' then begin
							// start kvspsa - Event Raiser
							IsHandled := false;
							OnTestFieldUnitOfMeasureCode(Rec, WorkType, IsHandled);
							if not IsHandled then
							// stop kvspsa
								TestField("Unit of Measure Code", WorkType."Unit of Measure Code");
						end;
					end else
						TestField("Work Type Code", '');

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


API review of Steeltoe.Configuration

Description
This PR is the result of me reviewing the public API surface of the Steeltoe.Configuration namespace, based on this guidance. Notable changes:

Seal public types that don't seem (properly) designed for inheritance (please indicate where I'm wrong)
Replace optional parameters with overloads in publicly exposed methods
Add input validation (null checks) on the parameters of publicly exposed methods
Change publicly exposed fields into properties, unless they are constants
Naming changes to comply with .NET Naming Conventions and Capitalization Conventions guidance from Microsoft
Correct or add doc-comments, as far as I understand the purpose of things
Prefer exposing interfaces to (read-only) collections, unless impossible due to lack of support in System.Text.Json
Remove logic that is conditional to the full .NET Framework

To facilitate the process, I've made several changes that are scoped to the Steeltoe.Configuration projects:

Activate Microsoft.CodeAnalysis.PublicApiAnalyzers to track breaking changes. To see effective changes, diff PublicAPI.Unshipped.txt between the first and latest commit.
Activate the next Sonar rules:

#928
#916
#929
#936
#937
#938
S3900: Arguments of public methods should be validated against null
#941
#947
#950
#954
#946

Open questions:

I've left all public types public, because I can't determine whether they should be. Although I don't understand why most types are public in the first place. The odd thing is that types in Steeltoe.Extensions.Configuration.Kubernetes are an exception to this: most types are internal there. What's the intended visibility of the types in the Steeltoe.Configuration namespace? Should we consider pubternal anywhere? In hindsight, this should have been the first step in the API review process.
Why do we provide a custom command-line configuration provider, given that Microsoft.Extensions.Configuration.CommandLine.CommandLineConfigurationProvider is already provided by ASP.NET?
What's the point of providing a random value provider? And why is it not generating cryptographically strong values, but instead relies on the deterministic (thus insecure) random generator?
Should we remove '"Extensions" in the "Steeltoe.Extensions.Configuration" namespace? The reason Microsoft puts Extensions in the namespace is to distinguish them from the core .NET APIs. But that reasoning does not apply to Steeltoe, so I think we should drop it.
Using the term Abstract in type names is uncommon in the .NET world. The typical convention is to prefix or suffix with Base. Should we rename types such as AbstractOptions and AbstractServiceOptions accordingly?

Fixes #899.
Quality checklist

[x] Your code complies with our Coding Style.
[x] You've updated unit and/or integration tests for your change, where applicable.
[ ] You've updated documentation for your change, where applicable.
If your change affects other repositories, such as Documentation, Samples and/or MainSite, add linked PRs here.
[x] There's an open issue for the PR that you are making. If you'd like to propose a new feature or change, please open an issue to discuss the change or find an existing issue.
[ ] You've added required license files and/or file headers (explaining where the code came from with proper attribution), where code is copied from StackOverflow, a blog, or OSS.

/azp run Steeltoe.All

/cc @ccheetham

@hananiel can you address this one:

Why do we provide a custom command-line configuration provider, given that Microsoft.Extensions.Configuration.CommandLine.CommandLineConfigurationProvider is already provided by ASP.NET?

I've left all public types public, because I can't determine whether they should be. Although I don't understand why most types are public in the first place. The odd thing is that types in Steeltoe.Extensions.Configuration.Kubernetes are an exception to this: most types are internal there. What's the intended visibility of the types in the Steeltoe.Configuration namespace? Should we consider pubternal anywhere? In hindsight, this should have been the first step in the API review process.

The Kubernetes config providers are newer and were built to be as internal as possible. I think other config providers were originally built to be as extensible as possible. @dtillman and @hananiel can weigh in here too, but my current thought is that I'd rather lock down our public surface area that is not likely to ever be needed externally.

I've left all public types public, because I can't determine whether they should be. Although I don't understand why most types are public in the first place. The odd thing is that types in Steeltoe.Extensions.Configuration.Kubernetes are an exception to this: most types are internal there. What's the intended visibility of the types in the Steeltoe.Configuration namespace? Should we consider pubternal anywhere? In hindsight, this should have been the first step in the API review process.

The Kubernetes config providers are newer and were built to be as internal as possible. I think other config providers were originally built to be as extensible as possible. @dtillman and @hananiel can weigh in here too, but my current thought is that I'd rather lock down our public surface area that is not likely to ever be needed externally.

@TimHess The phrase "that is not likely to ever be needed externally" is rather subjective and hard for me to determine. This feedback is not actionable for me in the current form. Can you produce a list of types that need to remain public -or- a list of types to make internal, or something along those lines?

@bart-vmware :What types are public that you think should not be?

Re: RandomValueConfigurationProvider .. we will keep it.
And to get an idea on where it came from and its usage ... It originated from the Spring Boot team and the usages they have found for it over the past several years.  Spring's implementation is RandomValuePropertySource.java
Do a google search to get some context for how it's used in the Spring eco system.
As for it needing to be "secure"... not sure that's necessary, but if after you understand how it's generally used and you still feel strongly that it needs to be "secure".. feel free to update the code to generate "secure" values for all of the generated value types (i.e. int, long string, uuid, etc.)

@hananiel can you address this one:

Why do we provide a custom command-line configuration provider, given that Microsoft.Extensions.Configuration.CommandLine.CommandLineConfigurationProvider is already provided by ASP.NET?

If we are talking about the SpringBootCmdprovider, it expands Cmd Line '.' delimited configuration key/value pairs that start with "spring." to .NET compatible form.
Specifically it helps Steeltoe stream apps play in Dataflow  There are other use cases as well where this would be useful - where the platform uses a java friendly convention.

@dtillman and @hananiel I agree, this is a large PR, but before we merge it, can you both please confirm that you don't see anything in any of the new files named PublicAPI.Unshipped.txt that we don't expect to be public? There are 7 of those, ranging from 18 (random) to 265 (config server) lines each. Most are < 50 lines, so there's probably some stuff in ConfigServer that could/should be less public

@hananiel can you address this one:

Why do we provide a custom command-line configuration provider, given that Microsoft.Extensions.Configuration.CommandLine.CommandLineConfigurationProvider is already provided by ASP.NET?

If we are talking about the SpringBootCmdprovider, it expands Cmd Line '.' delimited configuration key/value pairs that start with "spring." to .NET compatible form. Specifically it helps Steeltoe stream apps play in Dataflow  There are other use cases as well where this would be useful - where the platform uses a java friendly convention.

Given other use cases, should this feature be detached from the command line and/or move into Placeholder (since the purpose seems to align as another config transform)?

@hananiel can you address this one:

Why do we provide a custom command-line configuration provider, given that Microsoft.Extensions.Configuration.CommandLine.CommandLineConfigurationProvider is already provided by ASP.NET?

If we are talking about the SpringBootCmdprovider, it expands Cmd Line '.' delimited configuration key/value pairs that start with "spring." to .NET compatible form. Specifically it helps Steeltoe stream apps play in Dataflow  There are other use cases as well where this would be useful - where the platform uses a java friendly convention.

Given other use cases, should this feature be detached from the command line and/or move into Placeholder (since the purpose seems to align as another config transform)?

Thanks for the clarification. I was mislead by the type name, thinking it would read command-line values. But what it actually does is rename already-loaded keys, regardless of where they came from. I understand this is a useful feature to keep. While it has functional parity with Placeholder, this implementation is a lot simpler, so I'd prefer to keep them separate. I'm trying to come up with a better name that reflects what it does, but can't think of any, the current name indicates its purpose, which is handling Spring Boot command-line key syntax conversion. We could clarify the documentation a bit, though:
- Configuration provider that expands command-line '.' delimited configuration key/value pairs that start with "spring." to .NET compatible form.
+ Configuration provider that expands '.' delimited configuration keys that start with "spring." (typically originating from Spring Boot command-line parameters) to .NET compatible form.

and:
- Initializes a new instance of the <see cref="SpringBootCommandLineProvider" /> class. The <see cref="Configuration" /> will be created from the <see cref="CommandLineConfigurationProvider" />.
+ Initializes a new instance of the <see cref="SpringBootCommandLineProvider" /> class. The <see cref="IConfiguration" /> is assumed to contain configuration keys originating from the <see cref="CommandLineConfigurationProvider" />.

This PR seems to be so much more than just an API review of the Steeltoe.Configuration components... the changes touch everywhere. So many of the changes seem to have nothing to do with the API surface area of the Configuration components ... and more to do with resharper/analyzer/coding related changes ....
We should probably rename this PR to reflect what it really is ...

I don't think that's fair. Aside from a few small things (such as making test classes sealed, intentionally in a separate commit so it can be glanced over quickly), nearly all changes stem from the guidance here. The subset of sonar rules turned on in this PR exclusively concerns public API surface. This is unrelated to Resharper/StyleCop or code quality, it is about the exposed signatures. And where they changed, I've updated unit tests accordingly. I'm aware that this PR is large, but I've tried very hard to produce commits that target a single purpose, to make code review as easy as possible.

At this point, I guess I'm kind of with Hananiel ... lets merge it and start to work with the changes and see what happens

I disagree, there are still quite some open questions we haven't explored, discussed and decided on. The most important one being: What should be public and what should not be? Based on the outcome, I expect more changes regarding optional parameters and overloads. Merging now would not fulfill the purpose of this PR, which is to rationalize the public API surface and confirm this is what we want to expose.
Reviewing which types should be public may not be as hard as it seems, assuming a basic understanding of the interaction between types. We have 7 projects, each containing 10-15 files on average. We no longer have multiple types per .cs file, so going over the files per project should be doable. Another approach is to look at the PublicAPI.Unshipped.txt files. At a high level: everything in Kubernetes is internal, except for extension methods. In the other projects, nearly everything is public. I'd like to propose to make everything internal everywhere, except for extension methods. From there, we can decide which changes need to be reverted because we intend to expose those types. Would that work?

We've discussed the open questions in our team meeting and agreed to the following:

Public types: Make all types internal, except for extension methods. @bart-vmware
Random: Need to better understand its use cases first. @dtillman
Namespace: Remove "Extensions" from the namespace. @bart-vmware
Abstract: Drop in favor of Base prefix/suffix (investigate common patterns in BCL). @bart-vmware


move the deprecation warning below the template_errors check

Summary
this was changed in https://github.com/github/view_component/pull/875/commits/6799a29af7daff334c34ccb0c6b26d2afd9d0e13,
but that causes deprecations when compiling ViewComponent::Base, which is
still allowed to call the before_render_check method
Fixes https://github.com/github/view_component/issues/886
Other Information
Let me know if this seems good and needs a CHANGELOG entry.

All set, thanks.


Implement fetchAs for Fetch bindings

This adds a fetchAs<'T> method to the Fetch npm package.
This allows us to download a json file and driectly unwrap it in a object of type 'T.
I also added async versions. This allows us to avoid explict Async.AwaitAsPromise in suer code.
I also added RequireQualified access everywhere, because of name clashes. This is "breaking" but still a good idea, right?
/cc @tpetricek @7sharp9 @alfonsogarciacaro

Only problem with this is that, by convention, Fable.Import prefixed files include only bindings and Fable will ignore them so the utility functions will be lost in the compiled JS code. This is the case even if the functions are inlined.
In order for this to work, we would have to change Fable's behaviour (not sure if that's desirable) or  put the helper functions in a Fable.Helpers.Fetch.fs file as with React or Virtualdom.

Are you sure? I mean I use it like that!?

You're using it like that and the code compiles to JS? That's interesting, import files should be ignored by this line. I'll try to have a look and see if Fable isn't working as (I 😉 ) expected.

ok fixed

Thx!


annotate translocations with svtyper

Hello,
I was wondering wether it is possible to annotate translocations with svtyper. In the header of the svtyper vcf output I see these types of SVs
##ALT=<ID=DEL,Description="Deletion">
##ALT=<ID=DUP,Description="Duplication">
##ALT=<ID=INV,Description="Inversion">
##ALT=<ID=DUP:TANDEM,Description="Tandem duplication">
##ALT=<ID=INS,Description="Insertion of novel sequence">
##ALT=<ID=CNV,Description="Copy number variable region">
Is there a way to include translocations?
Many thanks
Jorge

Hi Svtyper developer(s),
I'd also love to know the possibility of designating translocation from SV callers.
Thanks in advance!

Hello, have you solved the genotyping problem of translocation?


Configure GitHub Pages

Set up the project to be hosted on GitHub Pages.

Beginning setup process for hosting project on GitHub Pages.