Make tutorial 1 GUI-only

Here, the tutorial 1 is being converted into GUI only. Most likely, the tutorial is still not using enough the possibilities of the GUI tool, so please let me know if you have suggestion of additional feature that could be displayed (like the variables info)?
Also, there are some points on which I would like your opinion:
Concerning the 2.2 Software/system requirements section
What is the best way to instruct people to install lammps with the GUI? The LAMMPS webpage of the GUI advises the user to download a precomplied LAMMPS version, and the "make install" page does not refer to GUI at all, so I suppose it is complicated to install manually? Should we advise the CMake way? Should we only suggest the precompiled version (and in this case, is it really necessary to specify the packages?)
A weird behavior about the GUI
I've noticed, following the current tutorial 1, (see for instance the WARNING in red in the text), that if I only run the minimization energy step, the GUI opens by default on the total energy, but the graph is empty. Moreover, I can't switch to the other quantities using "select data". After I add part B to the script and run the MD step as well as the energy minimization, then it seems to work just fine, i.e. I can switch from the temperature to the other quantities, and there is data in the graph (it happens with both 27Jun2024 and 2Aug2023 precompiled linux version). Is it because the minimization energy does not have enough steps?
A mildly annoying aspect of the graphs generated by the GUI
The first data point at step = 0 is not shown on the graph, and the last point is always 0.

In my TODO list

Use the dump image command instead of VMD, because currently the vizualisation part does not use the GUI enough. (DONE)
The VMD part was pushed to tutorial 2. (DONE)

What is the best way to instruct people to install lammps with the GUI? The LAMMPS webpage of the GUI advises the user to download a precomplied LAMMPS version, and the "make install" page does not refer to GUI at all, so I suppose it is complicated to install manually? Should we advise the CMake way? Should we only suggest the precompiled version (and in this case, is it really necessary to specify the packages?)

The experience from the tutorial day at past LAMMPS user workshops (in person and virtual) over many years has been that starting with having people to compile LAMMPS adds a huge burden at the beginning, consumes a lot of time, and can be quite challenging for today's beginners since their proficiency in compiling from source is generally very limited. Add to that, that compiling on macOS can be challenging and installing the necessary tools time consuming and on Windows the situation is even worse: only very recently has MS visual studio become available free of cost and installing cygwin is a major task that requires using a unix-like environment on windows.
Thus we had initially chosen to provide a precompiled version of LAMMPS in a VirtualBox container for x86_64, which worked for almost everybody at the last in-person tutorial, but with Apple switching to ARM based CPUs that was no longer viable. Thus we came up with having precompiled binaries packaged in a way that they can be run on most platforms: Windows installer packages, macOS .dmg app installer images (with executables containing code for both x86_64 and apple CPUs), Linux binaries bundled with wrapper scripts and required shared libraries, so they can run on a wide range of x86_64 (anything at the level of Ubuntu 20.04LTS or more recent). The 2023 tutorial was text mode only and this year we adapted everything for LAMMPS-GUI. The LAMMPS-GUI binary in the stable release is missing a lot of features and bugfixes since the more recent code depends on features only available in the release branch.
My perspective is the following:

get started with the GUI so there is only one program to learn and no operations on the console required
keep using the GUI as text editor unless you have a different preference
The packages with the GUI also contain the regular console mode LAMMPS binary "lmp" so no compilation should be needed. The linux platform is the most fragile, but the lammps-linux-x86_64-<version>.tar.gz package contains a statically linked console binary that will run on pretty much any Linux x86_64 platform (we tested as old as Ubuntu 16.04LTS).
Compilation from source is generally required for running in parallel with MPI, so I would suggest to make that a "bonus" tutorial at the end of the paper where then also some explanations for running in parallel are given. This is complicated a bit these days for people running on HPC clusters that use SLURM since that comes with a wrapper for mpirun/mpiexec.
The precompiled packages do include OPENMP, GPU (using OpenCL) and KOKKOS/OpenMP where possible, so it can run in parallel where supported. In the GUI this is chosen in the Preferences dialog.

My impression is that this is the path most accessible to people looking for an introductory tutorial.

and the "make install" page does not refer to GUI at all,

"make install" is CMake only and was added by and for people that do packaging of LAMMPS for distributions. Most of its functionality is thus "unofficial" and can change at any time.
Compiling LAMMPS-GUI from source is significantly more complex than LAMMPS itself, since it requires the Qt toolkit and its development headers and there may be some tweaking of the CMake configuration required to have it find the headers and libraries. So definitely not something to burden beginners with.

A weird behavior about the GUI
I've noticed, following the current tutorial 1, (see for instance the WARNING in red in the text), that if I only run the minimization energy step, the GUI opens by default on the total energy, but the graph is empty. Moreover, I can't switch to the other quantities using "select data". After I add part B to the script and run the MD step as well as the energy minimization, then it seems to work just fine, i.e. I can switch from the temperature to the other quantities, and there is data in the graph (it happens with both 27Jun2024 and 2Aug2023 precompiled linux version). Is it because the minimization energy does not have enough steps?

I have to explain a bit more in detail the mechanism how the GUI "harvests" the thermo data. LAMMPS itself doesn't know anything about it since it is running independently in a separate thread. For some other use within LAMMPS we added a feature that any thermodynamic output is cached and can later be retrieved through a function call. For LAMMPS-GUI we exposed this call also to the library interface. During a run, the GUI is polling the LAMMPS instance for thermo data. This works because threads share the address space. This is done by default at a 100ms interval to reduce overhead of using the GUI. That will fail to pick up data fast enough, if the simulated system is small and the output not frequent enough or both. This has been reported as a problem for tutorials before and in response I have made the polling interval adjustable in the preferences dialog.
There are 3 ways that the situation can be improved:

make the system larger
have more frequent thermo output
reduce the polling delay from the default 100ms. Lower limit is 1ms.

Thank you, Axel, for your insights.

Reducing the GUI update time interval works fine for tutorial 1, so we can go with that.
I agree that not bothering new users with compiling LAMMPS makes it easier, so maybe the only instruction at the beginning of the article could be "download the corresponding precomplied LAMMPS-GUI" and not talk at all about the packages.  Then I also agree that we could make all 7 tutorials with the GUI (if it works, I did not try that yet). Having some additional instruction for running LAMMPS on a cluster would indeed be a nice final supplement (right now the article finishes a bit abruptly, without ccl or final remark, so it would be nice to have some final notes and comments)

The LAMMPS-GUI binary in the stable release is missing a lot of features and bugfixes since the more recent code depends on features only available in the release branch.

I initially thought that it was better if the tutorials from the article were made compatible with the last stable version of LAMMPS, instead of a release branch, but since the next stable version is coming soon (as I think you said on the MATSCI forum), we can simply make all tutorials compatible with the 2024 stable version before submitting the article.
Best,
Simon


jsx-wrap-multilines {prop: "parens-new-line"} autofix creates results that aren't fixed by jsx-indent and jsx-indent-props

In component props whose values are components with props, jsx-wrap-multilines {prop: "parens-new-line"} correctly adds parentheses but badly messes up indentation.  This indentation is mostly fixed by jsx-indent and jsx-indent-props, with the exception of the line with the new closing parentheses.  That line ends up stuck at column 0:
.eslintrc.js:
module.exports = {
    "env": {
        "browser": true,
        "es6": true
    },
    "extends": [ "eslint:recommended", "plugin:react/recommended" ],
    "globals": {
        "Atomics": "readonly",
        "SharedArrayBuffer": "readonly"
    },
    "parser": "babel-eslint",
    "parserOptions": {
        "ecmaFeatures": {
            "jsx": true
        },
        "ecmaVersion": 2018,
        "sourceType": "module"
    },
    "plugins": [
        "react"
    ],
    "rules": {
      "react/jsx-wrap-multilines": [
        "error",
        {
          prop: "parens-new-line"
        }
      ],
      "react/jsx-indent-props": ["error", 2],
      "react/jsx-indent": ["error", 2],
    },
    settings: {
      react: {
        pragma: "React",
        version: "detect"
      },
    }
  };

Original code:
export default () => (
  <OuterComponent
    inner={
      <InnerComponent
        prop1="value1"
        prop2="value2"
        prop3="value3"
        prop4="value4"
        prop5="value5"
        prop6="value6"
        prop7="value7"
      />
    }
  />
);

Results of autofix:
export default () => (
  <OuterComponent
    inner={(
      <InnerComponent
        prop1="value1"
        prop2="value2"
        prop3="value3"
        prop4="value4"
        prop5="value5"
        prop6="value6"
        prop7="value7"
      />
)}
  />
);

Expected results of autofix:
export default () => (
  <OuterComponent
    inner={(
      <InnerComponent
        prop1="value1"
        prop2="value2"
        prop3="value3"
        prop4="value4"
        prop5="value5"
        prop6="value6"
        prop7="value7"
      />
    )}
  />
);

You need to enable the checkAttributes option for this to be reported as an error and be autofixed.
In your configuration:
-      "react/jsx-indent": ["error", 2],
+      "react/jsx-indent": ["error", 2, {checkAttributes: true}],


add BEEFY support to chain-spec-builder

chain-spec-builder should generate authority keys and store for BEEFY as well

The chain-spec-builder is not really used anywhere, it is mainly some unmaintained piece of software. TLDR: We don't need this.

Closing as not needed.


Update to latest React version (17.0)

The timer gives the following error when trying to install it through npm:
npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR!
npm ERR! While resolving<EMAIL_ADDRESS>npm ERR! Found<EMAIL_ADDRESS>npm ERR! node_modules/react
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer<EMAIL_ADDRESS>from<EMAIL_ADDRESS>npm ERR! node_modules/react-use-precision-timer
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.

Although the timer does work (from what I've seen so far) by using the --legacy-peer-deps flag, there are 2 high vulnerabilities and 1 critical vulnerability.
It would be a great addition if this can be updated for the latest React versions.

It seems I'm still getting this issue despite the most recent release. I don't think that >= is working for some reason.
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR!
npm ERR! While resolving<EMAIL_ADDRESS>npm ERR! Found<EMAIL_ADDRESS>npm ERR! node_modules/react
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!   peer react@">=16" from<EMAIL_ADDRESS>npm ERR!   node_modules/react-use-precision-timer
npm ERR!     react-use-precision-timer@"*" from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer<EMAIL_ADDRESS>from<EMAIL_ADDRESS>npm ERR! node_modules/react-dom
npm ERR!   peer react-dom@">=16" from<EMAIL_ADDRESS>npm ERR!   node_modules/react-use-precision-timer
npm ERR!     react-use-precision-timer@"*" from the root project```

@El-Potato-Slayer I've updated the project to support react versions 16-20. That should last a while!
Let me know if that works for you.
-Justin


feat(issue): add bug_report, feature_request issue template

Greatly inspired by: https://github.com/folke/noice.nvim/tree/main/.github/ISSUE_TEMPLATE

Came from the discussion https://github.com/nvim-neo-tree/neo-tree.nvim/discussions/1006.
TODOs

[ ] Please check if # Your Configuration section template is OK for you.

Mentions
@miversen33 @cseickel @nhat-vo

This is fine by me, but I'd like to hear @miversen33's thought since it was his idea.

@pysan3 added a quick comment to the PR.
I tested the repro config on a windows machine just to verify that it works on there as well (lots of people in the neovim community assume linux so I wanted to cover our bases). It does indeed work on windows as well so that's awesome.
Thanks for getting this together!

The config part is mostly done by folke and I just added local neotree_config = ... so big thanks to him ;)

Anyways, thanks for your feedbacks and I think it's safe to merge this PR and have a way better debugging experience for us @cseickel !!

Lol so uhh, we aren't making the repro configuration required?

@pysan3 added a quick comment to the PR.

Lol so uhh, we https://github.com/nvim-neo-tree/neo-tree.nvim/pull/1013#discussion_r1241247024?

Did you forget to submit a pending review?

My comment is listed as pending. I wonder if since I'm not marked as required or something, GitHub didn't make my pending review prevent the merge? Idk, just spit balling

Pending means "draft", only you can see it. You have to submit the pending review for anyone else to see your comments.

Pending means "draft", only you can see it. You have to submit the pending review for anyone else to see your comments.

Huh check that out. I thought simply commenting on the code snippet was good enough, but it seems that you have to push your review through. Good catch @cseickel :)

Lol I did the exact same thing just a few days ago: https://github.com/nvim-neo-tree/neo-tree.nvim/pull/1004


e-translation/tilde 500

The following command fails:
curl 'https://api.freme-project.eu/current/e-translation/tilde?informat=text&outformat=json-ld&source-lang=en&target-lang=de' -H 'Origin: http://localhost:63343' -H 'Accept-Encoding: gzip, deflate, br' -H 'Accept-Language: en-GB,en-US;q=0.8,en;q=0.6' -H 'User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2881.5 Safari/537.36' -H 'Content-Type: text/plain' -H 'Accept: application/json+ld' -H 'Referer: http://localhost:63343/CKEditor-Plugin/ckeditor/samples/freme.html?_ijt=jqmruku0vk9k987oo844lvbnls' -H 'Connection: keep-alive' --data-binary 'Dissident Chinese artist Ai Weiwei has been refused a six-month visa by the British government amid claims he lied on his visa application form. Ai posted a letter on Instagram stating his entry to the UK had been restricted because he failed to declare his criminal conviction. But Ai, though detained in China for 81 days in 2011, has never been charged or convicted of a crime in China. The artist was granted a 20-day visa to attend the opening of his London show.' --compressed

gives following error:
{
  "exception": "eu.freme.common.exception.ExternalServiceFailedException",
  "path": "/e-translation/tilde",
  "message": "External service failed: {\"Message\":\"MT Internal server error. Reason: Response status code does not indicate success: 400 (Error).\"}",
  "error": "Internal Server Error",
  "status": 500,
  "timestamp":<PHONE_NUMBER>975
}

Seems that FREME server is released with configuration that contains E-translation url to Tilde development environment. As this is in configuration we shouldn't wait until next release but could be changed in any time. @jnehring am I right?

I will change this.

I changed the Tilde MT endpoint for the live version of FREME. Above CURL works now.
@bjdmeest can you please verify and close the issue when it works?

Great, thanks!


Ensure that tabs and their labels appear properly at varying viewport widths

There are some style issues having to do with tab labels:

Tab labels from multiple tabs wrapping at different viewport widths, causing some to appear to hover too far above the content area.
Tab labels appearing somewhere between left-aligned and centered.
Tab labels getting clipped when the viewport gets too small, rather than, say, stacking.

When I created this issue I didn't realize that we had manually added style="width: 15%" on each tab, and they looked better after removing this. I am not sure if this issue is now invalid, or if it's possible to see these effects in other scenarios based on the width of the text and how it wraps.


Add files via upload

New collage; Higher Transport School Maribor, Slovenia

@szvpsmb First stage of verification passed, official domain is prometna.net as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision. Proof of domain ownership: https://prometna.net/visja-sola/

@szvpsmb Thank you for your patience while waiting for a review and processing your request. Pull request merged.


overflow: "auto"

If the html is an an element with the css property "overflow: auto", then the canvas only renders what is currently visible.

I am also in distress

I resolved
var clip = (container.css('overflow') === "hidden") ? [container.borders.clip] : [];
change
var clip = (["hidden", "scroll", "auto"].indexOf(container.css('overflow')) !== -1) ? [container.borders.clip] : [];


feat: LEAP-1110: Improve events and update docs for events

update docs about new added events
fix doc about selectAnnotation event
add useful information for selectHistory and beforeSaveAnnotation events

PR fulfills these requirements

[x] Commit message(s) and PR title follows the format [fix|feat|ci|chore|doc]: TICKET-ID: Short description of change made ex. fix: DEV-XXXX: Removed inconsistent code usage causing intermittent errors
[ ] Tests for the changes have been added/updated (for bug fixes/features)
[x] Docs have been added/updated (for bug fixes/features)
[x] Best efforts were made to ensure docs/code are concise and coherent (checked for spelling/grammatical errors, commented out code, debug logs etc.)
[x] Self-reviewed and ran all changes on a local instance (for bug fixes/features)

Change has impacts in these area(s)

[ ] Product design
[ ] Backend (Database)
[ ] Backend (API)
[x] Frontend

Does this PR introduce a breaking change?

[ ] Yes, and covered entirely by feature flag(s)
[ ] Yes, and covered partially by feature flag(s)
[ ] No
[x] Not sure (briefly explain the situation below)

It could but we didn't use arguments from selectHistory yet.
Which logical domain(s) does this change affect?
Docs, Events

/git merge develop


parameter to sqlmap, optparse to argparse, cosmetics

it now uses argparse because optparse is deprecated.
added some required parameters.

Sweet, thanks a lot for the PR!
Sorry for merging it late


Autocommit true not working

When I configure my connection with autocommit: true I do not see Update queries being executed. I need to add commit to the end of each query. "Update x SET y = 1; commit;"

That's something to take up with Vertica support.
The client can only tell the server it wants autocommit to be turned on, how it is handled is up to the server. The test suite of them gem ensures it works for INSERT statements: https://github.com/wvanbergen/vertica/blob/master/test/functional/functional_connection_test.rb#L133-L148


Prevent interaction while on display

Hi there! I've just used your spinner today and found that the views below it still allow interaction while the spinner itself is on display.

it's on my todo for the next update already

ok cool.

I'll leave it open, just to make sure I don't forget :+1:

fixed and it will go to Cocoapods with the next pod version


add 50K samples used for all generated analysis in the preprint

All distribution figures in preprint is based on this data.
Should be available to people now.

Also added the DFT labeled points.

Added conditionally optimized monodentates

#3 Contains all these fixes instead.


added quotations around the 's' in the the Map + Set + WeakMap + Weak…

…Set example.  It will throw an error if the 's' is not surrounded in quotations

Thanks @nyjy85.  The example is actually trying to highlight that the keys in a Map can be objects, as opposed to just strings as in normal JS objects.  So the original example is intentional, using the Set object 's' from the immediately previous example as the key for the Map.


Clear customized item will throw error if create a new one when item list is empty

In my usage, I create a customized tag then clear it. after that, i clicked input component, it throw a error at following code:
function _resetSearchInput() {
    if (ctrl.resetSearchInput) {
      ctrl.search = EMPTY_SEARCH;
      //reset activeIndex
      if (ctrl.selected && ctrl.items.length && !ctrl.multiple) {
        ctrl.activeIndex = _findIndex(ctrl.items, function(item){
          return angular.equals(this, item);
        }, ctrl.selected);
      }
   }
}

"ctrl.items" is undefined.
when clear selection in directive "uiSelectMultiple", it calls "ctrl.refreshComponent", as following show:
ctrl.refreshComponent = function(){
    //Remove already selected items
    //e.g. When user clicks on a selection, the selected array changes and
    //the dropdown should remove that item
    if($select.refreshItems){
      $select.refreshItems();
    }
    if($select.sizeSearchInput){
      $select.sizeSearchInput();
    }
};

"$select.refreshItems" pass undefined to function, finally go into "setPlainItems(items)", but "items" is undefined. Maybe "setPlainItems(items)" should change as following:
function setPlainItems(items) {
  ctrl.items = items || [];
}

I have the same issue. Just ran into it today

@sheguloves
I figured out the problem I was having; maybe you are having the same issue. In my case, I have 2 custom validation directives that are validating the ui-select ng-model data; 'ui-select-validate-email' and 'ui-select-required'.
It turns out that AngularJS sets the $modelValue to undefined when a value doesn't validate correctly. This breaks the code in ui-select because the model becomes undefined instead of reverting back to an empty array.
I fixed the issue by adding model-options="{ allowInvalid: true }" on the ui-select directive:
Example:
<ui-select             multiple            tagging="true"            tagging-label="(New Email Address)"            ng-model="vm.emails"            ng-model-options="{ allowInvalid: true }"            ui-select-validate-email="true"            ui-select-required="true"            theme="bootstrap">

@dustin-page
Yes, invalid value will change ng-model undefined. Thanks for your reply


Icons display errors in XAML designer constantly though build works fine

Describe the bug
When using the icons as described in FAQ a xmlns:iconPacks="http://metro.mahapps.com/winfx/xaml/iconpacks" namespace is generated automatically but XAML designer shows following error:
Unable to create unknown type "{http://metro.mahapps.com/winfx/xaml/iconpacks}PackIconMaterial"
Project works when compiled but XAML designer don't show anything at all because of this error.
To Reproduce
^
Expected behavior
No XAML error displayed.
Desktop Environment (please complete the following information):

IconPacks Version: 3.0.0 Alpha
Visual Studio: 2019 16.3 Community
.NET Framework: Core 3.0 WPF

Additional context
Where's no error if I manually use several namespaces in the following format. Usable but not comfortable.
        xmlns:iconPacks="clr-namespace:MahApps.Metro.IconPacks;assembly=MahApps.Metro.IconPacks.MaterialLight"
        xmlns:iconPacks1="clr-namespace:MahApps.Metro.IconPacks;assembly=MahApps.Metro.IconPacks.Material"

@panthernet Can you please specify which version of IconPacks, Visual Studio and .Net Core 3 you are using? Here is a screenshot from my test build with .Net Core 3.0 final, VS 16.3.5 and MahApps.Metro.IconPacks v3.0.0-alpha0245.

Same lib version as yours. I'll try to update VS to latest minor patch to see if something is changing. Looks like the error is not 100% reproducable. Some controls use original namespace just fine but custom ContentControl with a style which uses this namespace produces the error steadily when referenced inside other control.

Also don't forget to enable XAML UI designer when navigating MainWindow XAML code.
SampleApp.zip

@panthernet I got it and will raise a PR. It's again the designer who can't handle generic classes.


Fix for current rakudo

remove two "is rw" that were unnecessary, and produce exceptions
with the current, stricter checking
remove a done() from a test which has a test plan anyway

Thanks a lot! :)


async_mutex::unlock() behavior should be better documented

async_mutex::unlock() makes a direct call to handle.resume() on the next awaiter in the queue. This prevents the code releasing the mutex from continuing its execution until the next awaiter -- potentially all the awaiters -- have completed. (Completion here meaning either naturally or by co_awaiting an operation that schedules the remaining work for later execution).
It also means the thread an awaiter resumes on is always the thread of the first lock holder in the chain.
static async_mutex s_mutex{};

IAsyncAction DoWork() {
    {
        auto scopedLock = co_await s_mutex.lock_async();
        // (A) Do work that needs the mutex
    }
    // Lock is destroyed, calling s_mutex.unlock();
    // The next queued call to DoWork starts running. We are now blocked here until it completes.

    // (B) This line doesn't run until every queued DoWork is processed.
}

This behavior isn't intuitive. Its unusual for a future operation to have an impact on the current one. I would have expected instead that the code calling unlock() queues the next awaiter through some scheduler (thread pool, UI queue, etc), allowing the current operation to run through (B) immediately.
I realize the current design is more agnostic to the environment and devs can still customize where execution continues. So I'd ask to at least improve the documentation here to make clear 1) the impact of this design and 2) that you may want a call to something like winrt::resume_* after the lock_async() call to avoid blocking previous operations.

What's more - what if resumed coroutine throws an exception?
async_mutex_lock releases async_mutex in destructor via calling mutex->unlock()
So there is potential undefined behavior

Please be aware of #208 .


Fix cmake -DWARNINGS_AS_ERRORS=1 for clang

Description
That's a quick fix as -DWARNINGS_AS_ERRORS=1 does not work for clang compilers because of how the logic was ordered.
Tasks

[ ] Tested on Linux
[ ] Tested on Windows
[x] Tested on macOS
[ ] Tested on iOS
[ ] Tested on Android

How to test this PR?
cmake -B build -DCMAKE_EXPORT_COMPILE_COMMANDS=1 -DWARNINGS_AS_ERRORS=1
# Assert the flag was enabled
grep 'WARNINGS_AS_ERRORS' ./build/CMakeCache.txt
# Output should be: WARNINGS_AS_ERRORS:BOOL=1
grep -om 1 '\-Werror' ./build/compile_commands.json
# Output should be: -Werror

I think we may want to fix this for the 2.6.x branch as well, could you rebase/cherry-pick that commit and change the target branch?

SFMLBuildMaster: Build this please.

Are you also interested in providing fixes for the failures?

@reconndev Just a heads up, I went ahead and did the legwork on fixing the warnings that would pop up when clang does it's job. You can rebase/cherry-pick onto the bugfix/more_warnings and submit both commits in this PR if you want.

Thank you for that, however, our work overlaps now. I did very similar steps on two separate local branches. I will use your commits to cherry-pick but after I merge mine so that I can resolve potential conflicts clearly.

SFMLBuildMaster: Build this please.

SFMLBuildMaster: Build this please.

@eXpl0it3r: are you going to backmerge this into master?

Yes 🙂


Adds countdown timer project

Sorry to inform but this repository has been excluded from hacktoberfest. So inorder to make your PR count towards hacktoberfest, request you to make your contribution in this repository -> https://github.com/SR-Sunny-Raj/Hacktoberfest2022-for-everyone


nr play:h5 error

Because it is an experimental component, our goal is currently focused on applet (WeChat), and other platforms are temporarily incompatible.


Make Oracle example work

Fix the casing for the Oracle example, as it doesn't work otherwise.
Thanks for creating this! I can see there's nowhere to raise issues so I'm guessing it's a personal project. Is there a plan to merge this back to upstream?

it doesn't work without preinstalled oracle instant client, so I doubt this version is suitable to merge back to upstream.

Ahh OK, I'll see what can be done about that!

Hi Team,
How can i add multiple database instances which are running on same server  to "database_exporter.yml" file.I observed that it is taking last database connection string if i added like below
data_source_name: 'oracle://XX/XX@XX:1521/XX'
data_source_name: 'oracle://XX/XX@XX:1521/XX'
data_source_name: 'oracle://XX/XX@XX:1521/XX'
data_source_name: 'oracle://XX/XX@XX:1521/XX'
Please help

I supports only one db source.

Hi
Is there any way to add multiple database sources ??

I guess someone is working on it already:
multi-server-mode


added my name

I added my name to the Guestbook and it was pretty easy. Thanks for this awesome course!

Thank you!


macOS Apple M1 Support? Dataset format?

I would like to run this on my MacBook Pro.
Also, does it support the LJSpeech-like dataset format? Can you please provide the Google Colab notebook for both fine-tuning and training from scratch?

May refer to model/dataset.py, just with a modified script to do the pre-processing of dataset as in scripts/.
also #27

The test scripts run straight on MPS @yukiarimo - so there is nothing special to do for macOS.
https://github.com/search?q=repo%3ASWivid%2FF5-TTS+mps&type=code

@ChristianWeyer
I am getting the following error:
❯ uv run python test_infer_single.py
objc[66897]: Class AVFFrameReceiver is implemented in both<EMAIL_ADDRESS>(0x11de68308) and /Users/ahmetkca/Projects/F5-TTS/.direnv/python-3.9/lib/python3.9/site-packages/av/.dylibs/libavdevice.60.3.100.dylib (0x356dc0760). One of the two will be used. Which one is undefined.
objc[66897]: Class AVFAudioReceiver is implemented in both<EMAIL_ADDRESS>(0x11de68358) and /Users/ahmetkca/Projects/F5-TTS/.direnv/python-3.9/lib/python3.9/site-packages/av/.dylibs/libavdevice.60.3.100.dylib (0x356dc07b0). One of the two will be used. Which one is undefined.
Traceback (most recent call last):
  File "/Users/ahmetkca/Projects/F5-TTS/test_infer_single.py", line 9, in <module>
    from model import CFM, UNetT, DiT, MMDiT
  File "/Users/ahmetkca/Projects/F5-TTS/model/__init__.py", line 7, in <module>
    from model.trainer import Trainer
  File "/Users/ahmetkca/Projects/F5-TTS/model/trainer.py", line 22, in <module>
    from model.dataset import DynamicBatchSampler, collate_fn
  File "/Users/ahmetkca/Projects/F5-TTS/model/dataset.py", line 191, in <module>
    ) -> CustomDataset | HFDataset:
TypeError: unsupported operand type(s) for |: 'type' and 'type'

@ahmetkca try with current version, mainly for new feature with py310

I'll close this issue, if you have other questions you can reopen this issue.

@ahmetkca sorry for the bump but can you tell me your experience as compared to openvoice and others ?
thank you !


Trying to translate example to Android failed

I'm trying to translate cubes-example to Android. When I trying to run the cubes example on emulator I got these problems:
Emulator: android/android-emugl/host/libs/Translator/GLcommon/TextureUtils.cpp:doCompressedTexImage2D:300 error 0x500
Emulator: sPrepareTexImage2D:3075 failed validation
Emulator: android/android-emugl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp:glTexImage2D:3118 error 0x501
I'm not very familar with bgfx. So, I throwed it out for help.
My working environment is Android Studio 3.0.1 with emulator which is Nexus 5X API 27. The ABI is x86.

The program gone when I changed emulator to Nexus 6P API 23.


PoC: Round-trip Data Access API implementation using gRPC

As the output of this research spike, we ought to attempt to prove whether an in-process gRPC implementation could be used to decouple the zcash-client-backend of librustzcash from its consumers (the SDKs).
Criteria

an app exists that uses librustzcash to work with zcash primitives
the app fully controls the data
gRPC is the communication layer and it is decoupled from the data store
whatever gets created could, in theory, work for Web and iOS

Implementation Notes (how this might work):
Research has pointed in the general direction of a few things:

ideally, the gRPC server would live in code that's only written once (Rust)
there should be a "shim" layer that implements all the data_api traits and uses gRPC as the communication layer

this would involve abstracting all the primitive structs used by the data api into traits
this would need to be done in collaboration with Core (@nuttycom)

the SDK code for both iOS, Android and Web should be able to interact with the Rust gRPC server, bidirectionally
if we focus on making something that would work for Web, then we have the expertise to also make it work for other platforms
if it improves performance, we can look at flat buffers but it's probably better to start with protocol buffers, instead

Related:
EventStoreDB 20.10 released support for gRPC as the communication layer for the database. This video covers some of the very good reasons they've done so. Generally, this approach has a lot of promise and, for a long time, it has felt like the right fit for our needs. As more projects move in this direction, it only seems to validate the basic approach.

I've add a PR that fixes the transactionality issues with the write side of the data access API in [zcash/librustzcash#353]


Issue with v12 of Foundry

I updated to v12 of foundry last week and when working on a new map today, it seems I cant scale the background. The tool is available on the left side as normal, but nothing happens when choosing the "set grid" option

it looks like this module is not going to have a long term support, am i correct?

it looks like this module is not going to have a long term support, am i correct?

Doesn't look like it. Pretty much nothing works in v12.330
Error: Error thrown in hooked function '' for hook 'drawGridLayer'. The supplied DisplayObject must be a child of the caller
[Detected 3 packages: token-auras(2.7), lib-wrapper(<IP_ADDRESS>), monks-scene-navigation(12.01)]
    onError foundry.js:654
    call_wrapped libWrapper-wrapper.js:507
    <anonymous> listeners.js:138
    onError#0 libWrapper-wrapper.js:187
    #call foundry.js:636
    callAll foundry.js:589
    <anonymous> foundry.js:33713
    draw foundry.js:33709
    _draw foundry.js:28263
    _draw foundry.js:50656
    <anonymous> foundry.js:28247
    draw foundry.js:28244
    #draw foundry.js:25051
    draw foundry.js:24936
    view foundry.js:21358
    call_wrapped libWrapper-wrapper.js:507
    sceneView monks-scene-navigation.js:608
    call_wrapper libWrapper-wrapper.js:616
    view#0 libWrapper-wrapper.js:189
    _onClickScene foundry.js:83491
    _onClickScene monks-scene-navigation.js:367
    setTimeout handler*_onClickScene monks-scene-navigation.js:365
    jQuery 9
    activateListeners foundry.js:83402
    activateListeners monks-scene-navigation.js:205
    _render foundry.js:5866
    _render foundry.js:83308
    _render monks-scene-navigation.js:408
    render foundry.js:5792
    render foundry.js:83301
    render foundry.js:12278
    _onModifyContents foundry.js:12430
    #handleUpdateDocuments foundry-esm.js:56570
    _updateDocuments foundry-esm.js:56446
    update foundry-esm.js:12328
    updateDocuments foundry-esm.js:11473
    update foundry-esm.js:11583
    callback monks-scene-navigation.js:278
    #onClickItem foundry.js:68598
    jQuery 3
Caused by: Error: The supplied DisplayObject must be a child of the caller
[Detected 3 packages: token-auras(2.7), lib-wrapper(<IP_ADDRESS>), monks-scene-navigation(12.01)]
    getChildIndex Container.ts:251
    <anonymous> main.js:193
    #call foundry.js:632
    callAll foundry.js:589
    <anonymous> foundry.js:33713
    draw foundry.js:33709
    _draw foundry.js:28263
    _draw foundry.js:50656
    <anonymous> foundry.js:28247
    draw foundry.js:28244
    #draw foundry.js:25051
    draw foundry.js:24936
    view foundry.js:21358
    call_wrapped libWrapper-wrapper.js:507
    sceneView monks-scene-navigation.js:608
    call_wrapper libWrapper-wrapper.js:616
    view#0 libWrapper-wrapper.js:189
    _onClickScene foundry.js:83491
    _onClickScene monks-scene-navigation.js:367
    setTimeout handler*_onClickScene monks-scene-navigation.js:365
    jQuery 9
    activateListeners foundry.js:83402
    activateListeners monks-scene-navigation.js:205
    _render foundry.js:5866
    _render foundry.js:83308
    _render monks-scene-navigation.js:408
    render foundry.js:5792
    render foundry.js:83301
    render foundry.js:12278
    _onModifyContents foundry.js:12430
    #handleUpdateDocuments foundry-esm.js:56570
    _updateDocuments foundry-esm.js:56446
    update foundry-esm.js:12328
    updateDocuments foundry-esm.js:11473
    update foundry-esm.js:11583
    callback monks-scene-navigation.js:278
    #onClickItem foundry.js:68598
    jQuery 3
foundry.js:655:30

Hello, I have proposed a PR #4 to fix all of that and add support for V12.
While I do not know if maintainers are here, in the meantime you can use the module.json from my personal repo.
https://raw.githubusercontent.com/TheGoodwin/scaleGrid/master/module.json

@TheGoodwin wow, awesome! I don't  know if the maintainer is here, and i have no idea if you would like to start your own module repo because it's a lot of work with no reward, but, I really really appreciate your work!
Thank you.

For now I have my repo  from which my Foundry is getting the up to date version.
If there are no maintainer when the module needs to be updated again or if there is are a lot of people in need I may set up a clone on the Foundry module repo as well. In the meantime, I have hope the PR will be approved and we can goi back to follow this repository.
I do not plan on adding new features bu only to maintain it as long as possible for me.

given the fact that this issue has started sometime in May, that was 3 months back and no update, and the maintainer @atomdmac is busy with other repos because i do see a lot of activities on github, i feel like maybe wait a few days, with little hope.
in the meanwhile, i will switch to your repo and start using it. Thank you again!

Hey everyone - sorry for the delay.  I'll need to revisit my GitHub notifications as I don't think I got any for this discussion.  Thanks to @TheGoodwin for the fix.

@atomdmac I assume you haven't used Foundry for a long time then. Your module is pretty useful, just wanted you to know.

@Rommel-holmes Great to hear that this is being used by others, though I can't really take credit for any of the actual work :P I forked this from another intrepid Foundry user.
A release has been created for v1.4.5 here.


Add Kaggle Competition Link to README.md

The Kaggle Competition to solve this dataset has now finished but contains a wealth of knowledge regarding different approaches for trying to solve it. It is probably worth including a link in the README.md.

https://www.kaggle.com/c/abstraction-and-reasoning-challenge

Yes +1 to this! But for the updated competition at ARCprize.org

Done!


Subscriptions updated twice after update in method

Hi guys,
my code looks like
this.subscribe('subscriptionName', somekindofId, () => {
    this.autorun(() => {
        this.clientObject = SomeCollection.findOne(somekindofId);
        console.log('updated!')
    }, true)
}

and I noticed that when I invoke a method that triggers an update (i.e. SomeCollection.update...) the body of this.autorun is called twice.
I assume it's because of latency compensation that runs the 'update()' twice (on client and server). If that had to be the case would it be possible not to call the autorun the second time if values sets by server coincide with client values? It would be a nice optimisation not to force the app to run through change detection again (with the same values).
Thanks,
Raffaele

I don't see how this relates to the Angular2 package, sorry. It'll likely require changes to the Meteor core (in case it's really an issue). Though, you could post it to the Meteor repo if you consider it as a problem for you.

for some reasons I thought it was related to the glue (if there is any) between meteor and angular2 (MeteorComponent). I'll post in the meteor core.
Thanks


[bug] S2 bootstrapping failed when adding S2 device

Version
Checklist:

[X] I am not using HomeAssistant. Or: a developer has told me to come here.
[X] I have checked the troubleshooting section and my problem is not described there.
[X] I have read the changelog problem was not mentioned there.

Build/Run method

[X] Docker
[ ] PKG
[ ] Snap package
[ ] Manually built (git clone - yarn install - yarn run build )

zwavejs2mqtt version: 5.5.1
zwave-js version: 8.2.1
Describe the bug
I tried to add a node that supports Security S2 and it was added with no security. The driver logs indicate the S2 bootstrapping failed. z2m never prompted me for the DSK.
To Reproduce
Steps to reproduce the behavior:

Include node using the default inclusion strategy.
Dialog shows list of requested S2 security class. I left the defaults.
After some time, the dialog says the node was added with no security. It never prompted for the DSK.

Expected behavior
The node is successfully added with S2 security.
Additional context
The device is a HomeSeer HS-FC200+ fan controller. The device supports Security S2 and has a sticker with the DSK and SmartStart QR code.
Logs:
z2m.log
zwavejs_2021-08-25.log

It might, it might not. Depends on your mesh.

At this point i am leaning toward the device, i posted on the vendor's community site.  And others with their on/off switch are having the same issue.  But there dimmers switch are working for what people report.  Thanks for all the great work and help @AlCalzone


Split TestSetMembershipSimplifier

Simple refactoring that splits TestSetMembershipSimplifier into multiple, smaller unit tests.
This is in prep for supporting records in #723

Codecov Report

Merging #1449 (8c483ad) into unstable (9b88fe7) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           unstable    #1449   +/-   ##
=========================================
  Coverage     74.53%   74.53%
=========================================
  Files           360      360
  Lines         11433    11433
  Branches        535      535
=========================================
  Hits           8522     8522
  Misses         2911     2911

Impacted Files
Coverage Δ

...he/io/annotations/parser/CommentPreprocessor.scala
92.77% <0.00%> (-1.21%)
:arrow_down:

.../forsyte/apalache/tla/pp/ConstSimplifierBase.scala
97.64% <0.00%> (+1.17%)
:arrow_up:

Continue to review full report at Codecov.

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


version: post-release bump

Signed-off-by: Jiri Kuncar<EMAIL_ADDRESS>

Coverage remained the same at 99.31% when pulling 46e1279bd05a400cb280ae8d2dba0832b19ceb90 on jirikuncar:version-bump into 5443cba66e8824d4078b230501f2ebad0029f4b1 on inveniosoftware:master.


Conda package

Hi, thanks for making these fantastic models open-source. Is there any interest in making AIMNet2 conda installable similar to torchani to make it easier to install and use? I am more than happy to help or do this.

Some thoughts on how this could work:

make this package conda installable and distribute all of the model weights with the package
Move the model weights to another package or to be a release artifact and have the package download them when the model is needed similar to the torchani method.

Dear @jthorton thanks for the suggestions. I agree that this repo needs to be restructured. I will create a separate repo for the model zoo like in Torchani!

Hi @isayev thanks for setting that up, would you like me to make a PR to move the model weights?

I will move model weights, thanks!

agreed here - particularly w/ the extra dependencies added w/ PBC code, would be lovely to have a conda package!


Add a position-independent digest of the AST

Each AST node contains an Option<Digest> which can be optionally set by running compute_digest() over the AST. This will mutate the AST and set the Digest. Fundamentally, the digest is computed from the digest of AST children nodes (using compute_digest) or the explicit raw underlying value.
The underlying hash is changeable by modifying the macro and Digest type alias, and should enable us to determine when an AST -- or fragment of AST -- is the same.
This won't hash the start/end of the AST fragment, so it's, to some extent, position independent. It will hash newlines, comments, etc, which may change in the future depending on how we wind up using this.

cache cache cache! especially being position independent this will help so much

I smashed playwright a few times and different tests are flaking each time, and I keep updating mid-run. Going to land this monster and deal with any fallout.


[Bug] DBZ-5589 Mysql connector can't handle the case sensitive of rename/change column statement

Search before asking

[X] I searched in the issues and found nothing similar.

Flink version
ALL
Flink CDC version
ALL
Database and its version
MySQL, ALL version
Minimal reproduce step

create a table and write some data；
listen it‘s binlog Source:mysql , Sink:print；
alter a column case and update data.

What did you expect to see?
when i modify a clumn case， the filed name in the binlog record should be changed.
What did you see instead?
I changed a field name to lowercase, but its field name in binlog is still uppercase.
Anything else?
its a bug of debezium.
source code in
debezium-connector-mysql/src/main/java/io/debezium/connector/mysql/antlr/listener/AlterTableParserListener.java:AlterTableParserListener.java
Debezium 2.0.0 fix it by modify line 187 and line 349.
Use equals insdead of equalsIgnoreCase method.

Are you willing to submit a PR?

[x] I'm willing to submit a PR!

Would you like to cherry pick the bug fix to the cdc connector?

Closing this issue as it has been migrated to Apache Jira.


After upgrading to ts-jest 27: SyntaxError: Cannot use import statement outside a module

💥 Regression Report
><EMAIL_ADDRESS>test
> jest --no-cache

 FAIL  test/test.ts
  ● Test suite failed to run

    Jest encountered an unexpected token

    Jest failed to parse a file. This happens e.g. when your code or its dependencies use non-standard JavaScript syntax, or when Jest is not configured to support such syntax.

    Out of the box Jest supports Babel, which will be used to transform your files into valid JS based on your Babel configuration.

    By default "node_modules" folder is ignored by transformers.

    Here's what you can do:
     • If you are trying to use ECMAScript Modules, see https://jestjs.io/docs/ecmascript-modules for how to enable it.
     • To have some of your "node_modules" files transformed, you can specify a custom "transformIgnorePatterns" in your config.
     • If you need a custom transformation specify a "transform" option in your config.
     • If you simply want to mock your non-JS modules (e.g. binary assets) you can stub them out with the "moduleNameMapper" config option.

    You'll find more details and examples of these config options in the docs:
    https://jestjs.io/docs/configuration
    For information about custom transformations, see:
    https://jestjs.io/docs/code-transformation

    Details:

    /Users/doberkofler/MyDev/ljs_app/trunk/examples/frontend/jest/jest27/src/setup-jest.ts:1
    ({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,jest){import { hello } from './hello';
                                                                                ^^^^^^

    SyntaxError: Cannot use import statement outside a module

      at Runtime.createScriptFromCode (node_modules/jest-runtime/build/index.js:1479:14)
      at async TestScheduler.scheduleTests (node_modules/@jest/core/build/TestScheduler.js:347:13)

Test Suites: 1 failed, 1 total
Tests:       0 total
Snapshots:   0 total
Time:        1.759 s
Ran all test suites.

Last working version
Worked up to version:  26.5.6
Stopped working in version: 27.0.0
To Reproduce
Steps to reproduce the behavior: npm test
Expected behavior
Link to repo (highly encouraged)
jest27.zip
Debug log:

ts-jest.log
envinfo
System:
    OS: macOS 11.3

Npm packages:
    jest: 27.0.1
    ts-jest: 27.0.0
    typescript: 4.2.4
    babel(optional):

Is this fix already in 27.0.3? I am seeing the same issue (tests worked with 26.* and no longer work with 27 with "Cannot use import statement outside a module").

This should be fixed already, you can try clearing jest cache.

I tried that (just tried it again to be sure) and still no luck.

would you pls share a reproduce repo?

Unfortunately, it is a somewhat complex project so extracting a small enough repro is not trivial. Here is the config in case it raises some flags. Otherwise, I'll get back with a repro once I have a chance to work on one.
// package.json extract
"jest": {
    "preset": "ts-jest",
    "testEnvironment": "jsdom",
    "testPathIgnorePatterns": [
      "dist",
      "jest.setup.ts",
      "test-utils.tsx"
    ],
    "setupFilesAfterEnv": [
      "./src/__tests__/jest.setup.ts"
    ],
    "moduleNameMapper": {
      "\\.(css)$": "identity-obj-proxy",
      "^@project-name/(.*)/(.*)/(.*)$": "<rootDir>/../../packages/$1/src/$2/$3",
      "^@project-name/(.*)/(.*)$": "<rootDir>/../../packages/$1/src/$2",
      "^@project-name/(.*)$": "<rootDir>/../../packages/$1/src"
    },
    "globals": {
      "ts-jest": {
        "tsconfig": {
          "jsx": "preserve"
        },
        "babelConfig": {
          "presets": [
            "next/babel"
          ],
          "plugins": [
            "macros"
          ]
        }
      }
    }
  }

Also having this issue with next/babel enabled as well

I have around 20 modules in my mono-repo and I can confirm that only modules that use next/babel have the problem.

same issue here, an simple ts project without babel with default config
module.exports = {
    preset: 'ts-jest',
    testEnvironment: 'node',
};

the error
SyntaxError: Cannot use import statement outside a module

same issue

Same

Same issue here!

For me the tsconfig compilerOptions.jsx was set as preserve - changing to react-jsx fixed it.
{
  "compilerOptions": {
    "jsx": "react-jsx",
    //...
  },
  //...
}

I'm having this same issue, but just started using Jest -- so don't know if it's new.
I get this error when I import some JS/X files, but all the TypeScript files appear to work.
I was unable to find clear docs on how to configure this, so I'm just guessing it's a related error -- though using ts-test v 26 did not help me.

I was getting this error, but not using next/babel. I managed to get my tests to work with this config:
/** @type {import('@ts-jest/dist/types').InitialOptionsTsJest} */
module.exports = {
  preset: "ts-jest",
  testEnvironment: "node",
  globals: {
    "ts-jest": {
      isolatedModules: true,
    },
  },
  transform: {
    "^.+\\.jsx?$": "babel-jest",
  },
  moduleNameMapper: {

  },
  moduleDirectories: ["js", ".", "node_modules"],
}

module.exports = {
preset: "ts-jest",
testEnvironment: "node",
globals: {
"ts-jest": {
isolatedModules: true,
},
},
transform: {
"^.+\.jsx?$": "babel-jest",
},
moduleNameMapper: {
},
moduleDirectories: ["js", ".", "node_modules"],
}

Which file is this sorry?

That's the jest config file

Hi, I'm facing the same issue, but none of the solutions have worked for me.

  }
}

In my case jest would stumle on .js files from one of the dependencies in node_modules with SyntaxError: Cannot use import statement outside a module.
I had to make sure, that ts-jest wouldn't ignore (when transforming) .js files in troublesome dependency.
After reading carefully about presets, I realized, that it leaves them 'as-is' with preset: 'ts-jest'. I changed it to preset: 'ts-jest/presets/js-with-ts' and set "allowJs": true in tsconfig.json.
To not mess up my project's tsconfig.json, I have a separate one for jest.
In the end, my jest.config.js looks mainly like this:
module.exports = {
	preset: 'ts-jest/presets/js-with-ts',
	testEnvironment: "node",
	globals: {
		'ts-jest': {
			tsconfig: '<rootDir>/test/tsconfig.json',
		},
	},
	transformIgnorePatterns: [
		"node_modules/(?!troublesome-dependency/.*)",
	],
}

P.S. I didn't need a transform field, since the preset is already on it.
P.P.S. I didn't need to introduce any babel configuration

Adding
  globals: {
    'ts-jest': {
      isolatedModules: true,
    },
  },

works.
My setup:
jest.config.js
/* eslint-disable unicorn/prefer-module */
/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
module.exports = {
  preset: 'ts-jest',
  transform: {
    '\\.[jt]sx?$': 'ts-jest',
  },
  testEnvironment: 'node',
  setupFilesAfterEnv: ['./test/jest.setup.ts'],
  extensionsToTreatAsEsm: ['.ts'],
  globals: {
    'ts-jest': {
      useESM: true,
      isolatedModules: true,
    },
  },
};

package.json

  "scripts": {
    "test": "NODE_OPTIONS=--experimental-vm-modules jest --config=jest.config.js",

Before the change, I get lots of error:
 FAIL  test/wikiast-util-to-wikitext.test.ts
  ● Test suite failed to run

    Jest encountered an unexpected token

    Jest failed to parse a file. This happens e.g. when your code or its dependencies use non-standard JavaScript syntax, or when Jest is not configured to support such syntax.

    Out of the box Jest supports Babel, which will be used to transform your files into valid JS based on your Babel configuration.

    By default "node_modules" folder is ignored by transformers.

    Here's what you can do:
     • If you are trying to use ECMAScript Modules, see https://jestjs.io/docs/ecmascript-modules for how to enable it.
     • If you are trying to use TypeScript, see https://jestjs.io/docs/getting-started#using-typescript
     • To have some of your "node_modules" files transformed, you can specify a custom "transformIgnorePatterns" in your config.
     • If you need a custom transformation specify a "transform" option in your config.
     • If you simply want to mock your non-JS modules (e.g. binary assets) you can stub them out with the "moduleNameMapper" config option.

    You'll find more details and examples of these config options in the docs:
    https://jestjs.io/docs/configuration
    For information about custom transformations, see:
    https://jestjs.io/docs/code-transformation

    Details:

    slate-write/node_modules/unist-util-parents/index.js:16
    export function parents(tree) {
    ^^^^^^

    SyntaxError: Unexpected token 'export'

      1 | import cloneDeep from 'lodash/cloneDeep';
      2 | import type { IParseTreeNode } from 'tiddlywiki';
    > 3 | import { parents } from 'unist-util-parents';

And now     "ts-jest": "28.0.2", works very well.

For me what works;
module.exports = {
  preset: "ts-jest",
  testEnvironment: "node",
  extensionsToTreatAsEsm: [".ts"],
};

And run with;
"test": "NODE_OPTIONS=--experimental-vm-modules jest",
No other changes to the default installation, thanks @linonetwo


App store rejection -

Version of react-native-iap
1.2.5
Platforms you faced the error (IOS or Android or both?)
iOS
Expected behavior
prepare() method should return false with app store restrictions on
Actual behavior
prepare() method returns true
Tested environment (Emulator? Real Device?)
real device (iPhone 8)
Steps to reproduce the behavior

Set up in app purchases as described in the documentation.

Turn on parental control by adding app store restrictions to the device.

App Store submission was rejected for the following reason:

Guideline 1.3 - Safety - Kids Category
You have selected the Kids category for your app, but it includes access to external content or allows the user to engage in commerce without first obtaining parental permission. Specifically, we found the following in your app:

Purchasing in-app purchase products

Next Steps
To resolve this issue, please update your app to incorporate a parental gate before the user can access external content or engage in commerce and ensure that the parental gate cannot be disabled.

Is there any way the prepare() method can return a little more data about whether restrictions are enabled on the device. Or at least return false instead of true when App Store has restrictions turned on.

@MarkBlythe I am afraid to say that this is not the issue of this module.
I didn't go through this document, but what I grasped is
you should make some steps (obstacles ?) to purchase the products.
https://developer.apple.com/app-store/parental-gates/

@JJMoon Apologies, on further discussion with Apple I realised the rejection was 100% their end not the module. This module is great and I plan to use it again in future projects. It would be awesome if we could identify that restrictions on the device were in place however that would be a feature request and not an issue.


netlify: fix build

Use Python 3.6 to work around https://github.com/sphinx-doc/sphinx/issues/5417.

sigh

I do think we should use the latest python to build the documentation.

It should not matter, as long as the Python version we're using is supported, since tox is used, no? It should be fixed in the next version of sphinx (see https://github.com/sphinx-doc/sphinx/pull/5443). For now we can either globally pin sphinx in the requirements or merge #1482.


Export (geometry & appearance) Not Like Blender Original

I took the HOUSE model from Blend Source (https://www.blendswap.com/blends/view/15091) to try out the exporter. I opened it in the latest release of Blender (V2.78c) with the export code downloaded and installed yesterday (2017-07-20). I exported the model to a binary glTF format and loaded it in Don McCurdy's glTF viewer (https://gltf-viewer.donmccurdy.com/).
Original:

Binary glTF

The results are not the same.
Geometry

The front steps and roof are not on flat piece. It appears that the normals may be reversed.
There is something unexpected going on at ground level under the 4 front windows.
Roof geometry appears inverted. This may be the same problem as the first bullet

Appearance:

The Blender model is flat colored (not necessarily a flat shading), while the one in the glTF viewer is very reflective.
The windows are transparent in Blender and interior detail is visible, not in glTF

The text-based glTF file does not display at all in the viewer. I also exported in X3D and used BitManagement's BS Contact viewer. That model & display shows the same geometry issues, but is closer to Blender in appearance.

I am not sure if the problem is the exporter or the glTF2 loader (or even something else), but this seemed the best place to start. I am not really Blender-knowledgeable so the problem may be in something I didn't do or am looking at it incorrectly.

Okay, I analyzed the model regarding geometry:

The screenshot is from the edit mode from the front roof. Also, I enabled face normal rendering. As you can see - the normals are not correct. The reason, why Blender renders this correct is, that the mesh is marked double sided.
I assume, the rest of the geometry artifacts are the same.
As described in the user documentation, the double sided flag comes from the material and not the mesh.
https://github.com/KhronosGroup/glTF-Blender-Exporter/blob/master/docs/user.md
Thats the reason, why you have these artifacts.
How to solve this? Recalculate/set the normals at the rrenous place.
Appearance:
Also mentioned in the docs, the Blender material is not a PBR glTF 2,0 material and so no materials are exported. This means, the default material is used. So all color, texture information, alpha etc. gets lost.
To summarize:

It is not a viewer and/or exporter bug.
The scene needs some rework to render properly.

Thanks a lot that you took so much time to investigate this. Sorry, that I cannot help u further.
There will be an extension to glTF 2.0, called KHR_materials_cmnBlinnPhong. With this extension, it will also be possbile to export these materials as well.
Meanwhile, you need to convert the materials to PBR ones.

Thank you for your detailed response. That information helps a lot and I will be able to bring it to the Blender BOFs during SIGGRAPH. I see that knowing the target and how you are going to get there is still very important.

Maybe you have a look at this:
https://github.com/KhronosGroup/glTF-Blender-Exporter/pull/53
We received a pull request, that as much PBR materials as possible are exported - without breaking the metallic roughness workflow.

@MiguelAlgaba thanks for catching this — I've filed a new issue: https://github.com/KhronosGroup/glTF-Blender-Exporter/issues/199


report each union split for NoMethodErrorReport

Codecov Report

Merging #192 (85a5e8d) into master (a220abe) will increase coverage by 0.07%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #192      +/-   ##
==========================================
+ Coverage   86.12%   86.19%   +0.07%
==========================================
  Files          11       11
  Lines        1441     1449       +8
==========================================
+ Hits         1241     1249       +8
  Misses        200      200

Impacted Files
Coverage Δ

src/JET.jl
73.21% <ø> (ø)

src/tfuncs.jl
98.11% <ø> (ø)

src/abstractinterpretation.jl
96.12% <100.00%> (+0.12%)
:arrow_up:

src/reports.jl
89.36% <100.00%> (+0.05%)
:arrow_up:

Continue to review full report at Codecov.

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


[CJS] Added picocolors.cjs file generator

Run npm run build:cjs -- it will create build folder with picocolors.cjs file inside

Compiled CJS file often too big. It was a reason why I avoided it in nanocolors and even in nanoid I do the very simple exports = { x } → exports { x } compiling.

I agree that compilation of named exports requires too much space. Given how CJS require() works comparing to ESM import() it seems like we can simply maintain two files:

Sorry for misclick
I agree that the build output can be quite bloated. Considering the difference between CJS require and ESM import, an option can be to maintain two files:
// picocolors.js
export let red = ...
export let green = ...
...

// picocolors.cjs
module.exports = {
  red: ...,
  green: ...,
  ...
}

Thus, let { red, green } = require('picocolors') and import { red, green } from 'picocolors' should be working just fine.

Having picocolors.cjs like this should give us an easy support for Node v6+
let tty = require("tty");

let isColorSupported =
  !("NO_COLOR" in process.env || process.argv.includes("--no-color")) &&
  ("FORCE_COLOR" in process.env ||
    process.argv.includes("--color") ||
    process.platform === "win32" ||
    (tty.isatty(1) && process.env.TERM !== "dumb") ||
    "CI" in process.env);

function formatter(open, close, replace = open) {
  return isColorSupported
    ? (string) => {
        let index = string.indexOf(close, open.length);
        return !~index
          ? open + string + close
          : open + replaceClose(string, close, replace, index) + close;
      }
    : (string) => string;
}

function replaceClose(string, close, replace, index) {
  if (!~index) return string;
  let start = string.substring(0, index) + replace;
  let end = string.substring(index + close.length);
  return start + replaceClose(end, close, replace, end.indexOf(close));
}

module.exports = {
  isColorSupported,
  reset: (s) => `\x1b[0m${s}\x1b[0m`,
  bold: formatter("\x1b[1m", "\x1b[22m", "\x1b[22m\x1b[1m"),
  dim: formatter("\x1b[2m", "\x1b[22m", "\x1b[22m\x1b[2m"),
  italic: formatter("\x1b[3m", "\x1b[23m"),
  underline: formatter("\x1b[4m", "\x1b[24m"),
  inverse: formatter("\x1b[7m", "\x1b[27m"),
  hidden: formatter("\x1b[8m", "\x1b[28m"),
  strikethrough: formatter("\x1b[9m", "\x1b[29m"),
  black: formatter("\x1b[30m", "\x1b[39m"),
  red: formatter("\x1b[31m", "\x1b[39m"),
  green: formatter("\x1b[32m", "\x1b[39m"),
  yellow: formatter("\x1b[33m", "\x1b[39m"),
  blue: formatter("\x1b[34m", "\x1b[39m"),
  magenta: formatter("\x1b[35m", "\x1b[39m"),
  cyan: formatter("\x1b[36m", "\x1b[39m"),
  white: formatter("\x1b[37m", "\x1b[39m"),
  gray: formatter("\x1b[90m", "\x1b[39m"),
  bgBlack: formatter("\x1b[40m", "\x1b[49m"),
  bgRed: formatter("\x1b[41m", "\x1b[49m"),
  bgGreen: formatter("\x1b[42m", "\x1b[49m"),
  bgYellow: formatter("\x1b[43m", "\x1b[49m"),
  bgBlue: formatter("\x1b[44m", "\x1b[49m"),
  bgMagenta: formatter("\x1b[45m", "\x1b[49m"),
  bgCyan: formatter("\x1b[46m", "\x1b[49m"),
  bgWhite: formatter("\x1b[47m", "\x1b[49m"),
};

Alternatively, we can do Object.assign(module.exports, { ... }) to keep the parity between ESM and CJS in terms of using "named exports"

Implemented in #7


ext_authz: add initial support of unified matching API

This is the 2nd PR for #11832 that adds the initial matcher API to ext_authz filter. The design doc is here.
Note this currently only updates the ext_authz HTTP filter because the matching API currently only includes HTTP header and body. will later extend the matcher API for more semantics and use it in TCP ext_authz and other filters (e.g. RBAC).
Signed-off-by: Yangmin Zhu<EMAIL_ADDRESS>cc @mattklein123
For an explanation of how to fill out the fields, please see the relevant section
in PULL_REQUESTS.md
Commit Message:
Additional Description:
Risk Level: Low
Testing: Unit tests, e2e tests and manual tests
Docs Changes: Updated ext_authz configuration
Release Notes: Added version history
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Deprecated:]

Sorry for the delay. Can you check CI and merge main and I will take a look?
/wait

Sorry for the delay. Can you check CI and merge main and I will take a look?
/wait

Thanks. The HttpFilterTest.ErrorFailClose in //test/extensions/filters/http/ext_authz:ext_authz_test was failing in CI but passing in my local runs, I tried to debug but couldn't figure it out. Just merged master to see if it's still failing in CI.

Still broken. :(
/wait

Still broken. :(
/wait

Ah, I figured it out, I forget to initialize a local bool variable to false (ecd819). It somehow happens to always initialize to false in my local run probably because I'm not running it with -c opt.

closed in favor of https://github.com/envoyproxy/envoy/pull/13404


Enum properties missing from example when StringEnumConverter is used in ASP.net core 3

When I set the StringEnumConverter setting (globally or on the enum itself via an attribute) the enum field will be missing from the example (for a method that takes a type with the enum as a property as argument) in the Swagger UI. It's visible in the schema just fine (with textual values). When the StringEnumConverter is removed, the example contains the enum field again (with numeric values).
I have NSwag.AspNetCore Version="13.1.2 and .net core 3 final. This used to work with asp.net core 2.

Are you still using the Newtonsoft.Json serializer in ASP.NET Core 3.0?

Yes. I thought that's still required if you want some control over how the JSON is serialised. Or is there a way to get the Microsoft JSON serialiser to serialise enums as string?

Ok, so the problem occurs if you apply the [Required] attribute to the property. Without it it shows up in the example with a textual value as it should. Granted, the required attribute doesn't really work for value types anyway, but it's still odd behavior.


use triton to init window info

batch_size:  45
b_seq_len:  tensor([23, 45, 24, 31, 46, 32, 46, 27, 45, 42, 34, 30, 32, 31, 27, 35, 28, 34,
23, 41, 33, 21, 24, 49, 24, 49, 33, 29, 48, 20, 49, 23, 22, 31, 47, 22,
43, 29, 45, 32, 29, 36, 49, 23, 47], device='cuda:0',
dtype=torch.int32)
sliding_window:  32

att_len:  tensor([23, 32, 24, 31, 32, 32, 32, 27, 32, 32, 32, 30, 32, 31, 27, 32, 28, 32,
23, 32, 32, 21, 24, 32, 24, 32, 32, 29, 32, 20, 32, 23, 22, 31, 32, 22,
32, 29, 32, 32, 29, 32, 32, 23, 32], device='cuda:0',
dtype=torch.int32)

data = {
'inputs': 'Who is George Washington?',
"parameters": {
'do_sample': False,
'ignore_eos': False,
'max_new_tokens': 256,
}
}
{'generated_text': ['\n\nGeorge Washington was the first president of the United States. He was born on February 22, 1732, in Westmoreland County, Virginia. He was the son of Augustine Washington and Mary Ball Washington. He had two brothers and two sisters.\n\nGeorge Washington was a very important person in American history. He was the first president of the United States and he helped to create the country. He was also a general in the American Revolutionary War.\n\nGeorge Washington was born on February 22, 1732, in Westmoreland County, Virginia. He was the son of Augustine Washington and Mary Ball Washington. He had two brothers and two sisters.\n\nGeorge Washington was a very important person in American history. He was the first president of the United States and he helped to create the country. He was also a general in the American Revolutionary War.\n\nGeorge Washington was born on February 22, 1732, in Westmoreland County, Virginia. He was the son of Augustine Washington and Mary Ball Washington. He had two brothers and two sisters.\n\nGeorge Washington was a very important person in American history. He was'], 'count_output_tokens': 256, 'finish_reason': 'length'}
data = {
'inputs': 'What is AI?',
"parameters": {
'do_sample': False,
'ignore_eos': False,
'max_new_tokens': 256,
}
}
{'generated_text': ['\n\nArtificial Intelligence (AI) is a branch of computer science that deals with the simulation of intelligent behavior in computers.\n\nWhat is Machine Learning?\n\nMachine learning is a subset of artificial intelligence in the field of computer science that often uses statistical techniques to give computers the ability to “learn” (i.e., progressively improve performance on a specific task) with data, without being explicitly programmed.\n\nWhat is Deep Learning?\n\nDeep learning is a subset of machine learning that uses artificial neural networks to learn from data.\n\nWhat is a neural network?\n\nA neural network is a computational model inspired by the structure and function of biological neural networks.\n\nWhat is a convolutional neural network?\n\nA convolutional neural network (CNN) is a type of neural network, most commonly applied to analyzing visual imagery.\n\nWhat is a recurrent neural network?\n\nA recurrent neural network (RNN) is a type of artificial neural network where connections between nodes form a directed cycle.\n\nWhat is a generative adversarial network?\n\nA generative adversarial network (GAN) is a type of neural network that uses two neural networks to generate'], 'count_output_tokens': 256, 'finish_reason': 'length'}


2830 persistent endpoints for downloads

This adds the following endpoints, allowing for the creation of DwC Archive dumps via the external api:

POST http://<IP_ADDRESS>:3000/api/v1/downloads/build?project_token=<>&token=<>&type=Download::DwcArchive::Complete
DELETE http://<IP_ADDRESS>:3000/api/v1/downloads/123?project_token=<>&token=<>
GET http://<IP_ADDRESS>:3000/api/v1/downloads/123?project_token=<>
GET http://<IP_ADDRESS>:3000/api/v1/downloads/123/file?project_token=<> # return the binary

TODO:

[x] Confirm CSRF modifications to allow delete and post to /api/v1 are not otherwise dangerous
[x] Test time to calculate sha2 for large exports
[x] Test that the SHA2 calculation (on the zipfile) is repeatble by other non-Ruby calculators
[ ] Allows data_attributes params to pass through in requests
[x] Ensure basic, non external Download models are not impacts (auto tests should do this)
[ ] Confirm that ActiveJobs are cancelled (raise quietly, but see if we can log if noisy) when the corresponding serialized Download object is missing from the database.  This is the easiest way to cancel the job
[ ] Determine whether we need to cancel jobs "in progress".   If needed the likely way to do this is to 1) update the Download instance at the start of build time to indicate builds are in-progress (new Download attribute/migration) then 2) prevent DELETE requests if "in progress" .   We could extend this idea to use a % complete style "in progress" tracker to indicate roughly how far we are along.  Not nil in this field would indicate the build is in progress.

Changelog
Added

Download API enpoints and model to facilitate DwC Archive building remotely #2830
Option to include project creators as members on new project creation #2410

Codecov Report

Merging #2936 (6e71be6) into development (82d69f1) will decrease coverage by 21.87%.
The diff coverage is 64.47%.

:exclamation: Current head 6e71be6 differs from pull request most recent head 4975d55. Consider uploading reports for the commit 4975d55 to get more accurate results

@@               Coverage Diff                @@
##           development    #2936       +/-   ##
================================================
- Coverage        86.98%   65.10%   -21.88%
================================================
  Files             1890     1383      -507
  Lines            66769    40848    -25921
================================================
- Hits             58076    26596    -31480
- Misses            8693    14252     +5559

Impacted Files
Coverage Δ

...pp/controllers/collection_objects/filter_params.rb
46.15% <0.00%> (-30.77%)
:arrow_down:

app/controllers/concerns/forgery_protection.rb
45.45% <0.00%> (-54.55%)
:arrow_down:

app/controllers/projects_controller.rb
38.09% <0.00%> (-42.86%)
:arrow_down:

app/controllers/taxon_names_controller.rb
30.23% <ø> (-34.11%)
:arrow_down:

app/jobs/dwca_create_download_job.rb
77.77% <ø> (ø)

lib/export/download.rb
97.72% <ø> (ø)

lib/export/dwca.rb
42.30% <ø> (-46.16%)
:arrow_down:

app/controllers/downloads_controller.rb
35.82% <31.25%> (-29.64%)
:arrow_down:

app/helpers/downloads_helper.rb
35.71% <33.33%> (-37.02%)
:arrow_down:

app/helpers/projects_helper.rb
40.00% <33.33%> (-48.24%)
:arrow_down:

... and 1077 more

Continue to review full report at Codecov.

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

Is my understanding correct that POST/DELETE require user token and project token alone is not enough to authorize access?
Was about to raise concerns about download request flooding but found out that there is protection against that by not allowing more than a download. Perhaps will need some security measures to prevent supplying any download type, but at least I tried with type=Download::Text&name=test and it still marked that name cannot be blank.

Is my understanding correct that POST/DELETE require user token and project token alone is not enough to authorize access?

Yes, POST/PATCH should require user.
Only specific download types are allowed, and n=1 right now, so hopefully that is not an issue.
Thanks for testing.

@LordFlashmeow I think this is tracking your file download requirements?

Allow data_attributes params to pass through in requests
Would that mean filtering by attributes of objects or rather by DataAttribute associations?

* [ ]  Test time to calculate sha2 for large exports

3.1.2 :048 > Benchmark.bm do |x|
3.1.2 :049 >   (1..32).each do |power|
3.1.2 :050 >     data = SecureRandom.random_bytes(2**power)
3.1.2 :051 >     x.report(number_to_human_size(2**power)) { Digest::SHA256.hexdigest(data) }
3.1.2 :052 >   end
3.1.2 :053 > end
       user     system      total        real
2 Bytes  0.000002   0.000008   0.000010 (  0.000009)
4 Bytes  0.000001   0.000003   0.000004 (  0.000004)
8 Bytes  0.000017   0.000000   0.000017 (  0.000003)
16 Bytes  0.000003   0.000000   0.000003 (  0.000003)
32 Bytes  0.000003   0.000000   0.000003 (  0.000003)
64 Bytes  0.000004   0.000000   0.000004 (  0.000003)
128 Bytes  0.000004   0.000000   0.000004 (  0.000003)
256 Bytes  0.000005   0.000000   0.000005 (  0.000004)
512 Bytes  0.000006   0.000000   0.000006 (  0.000005)
1 KB  0.000008   0.000000   0.000008 (  0.000007)
2 KB  0.000011   0.000000   0.000011 (  0.000011)
4 KB  0.000019   0.000000   0.000019 (  0.000018)
8 KB  0.000034   0.000000   0.000034 (  0.000033)
16 KB  0.000063   0.000000   0.000063 (  0.000062)
32 KB  0.000121   0.000000   0.000121 (  0.000121)
64 KB  0.000000   0.000238   0.000238 (  0.000238)
128 KB  0.000000   0.000504   0.000504 (  0.000503)
256 KB  0.000988   0.000000   0.000988 (  0.000987)
512 KB  0.000379   0.001533   0.001912 (  0.001912)
1 MB  0.003588   0.001058   0.004646 (  0.004630)
2 MB  0.008464   0.000000   0.008464 (  0.008475)
4 MB  0.015879   0.000000   0.015879 (  0.015879)
8 MB  0.031285   0.000000   0.031285 (  0.031285)
16 MB  0.060420   0.001607   0.062027 (  0.062027)
32 MB  0.121886   0.000000   0.121886 (  0.121886)
64 MB  0.245944   0.000000   0.245944 (  0.245946)
128 MB  0.488286   0.000393   0.488679 (  0.488710)
256 MB  0.980587   0.000887   0.981474 (  0.981545)
512 MB  1.968927   0.000845   1.969772 (  1.969840)
1 GB  3.945651   0.001307   3.946958 (  3.947090)
2 GB  7.932234   0.000000   7.932234 (  7.932557)
4 GB 16.372113   0.008870  16.380983 ( 16.388204)

@LordFlashmeow I think this is tracking your file download requirements?

Allow data_attributes params to pass through in requests
Would that mean filtering by attributes of objects or rather by DataAttribute associations?

Yes. Ideally we could provide a list of predicate IDs to include as a parameter to the request.

@LordFlashmeow Predicate params should be there already, I should have say "Allows", i.e. they need testing, not implementation to pass that check:
    params.permit(collecting_event_predicate_id: [], collection_object_predicate_id: [] ).transform_keys(&:to_sym).to_h

@LocoDelAssembly @LordFlashmeow I'd like to merge this, but do need help confirming the last 3 checks are OK.

I tested COLDP and DarwinCore dashboard downloads with development merged and both still worked.

If you delete a Download while it is running, the job completes and the download file is generated (but it may not be a problem as discussed with @mjy). At least you can't access the file for a deleted download at: http://localhost:3000/api/v1/downloads/{id}/file
I'm not sure how to do a call with the data_attributes or couldn't get it to work.


2024-10-24_01-35-04_master-next_aws-c-event-stream

Automatically created.

You have exceeded a secondary rate limit and have been temporarily blocked from content creation. Please retry your request again later. If you reach out to GitHub Support for help, please include the request ID ACF1:201F22:3331061:61A1A66:671A0928 and timestamp 2024-10-24 08:45:30 UTC.

You have exceeded a secondary rate limit and have been temporarily blocked from content creation. Please retry your request again later. If you reach out to GitHub Support for help, please include the request ID ACF1:201F22:3331744:61A2804:671A092A and timestamp 2024-10-24 08:45:32 UTC.

You have exceeded a secondary rate limit and have been temporarily blocked from content creation. Please retry your request again later. If you reach out to GitHub Support for help, please include the request ID ACF1:201F22:3331DBC:61A34E5:671A092C and timestamp 2024-10-24 08:45:33 UTC.


Update assign-policies.md

Added support for TPM 2.0

@JohanFreelancer9 Copy editing is needed for this PR. Thanks.


No URI present. Default controller set.

My routing is not working.
I removed the index.php with - https://github.com/bcit-ci/CodeIgniter/wiki/Removing-index.php-from-a-URL-path-in-XAMPP-for-Windows
I am using the following settings:
Fresh copy of codeigniter 3.1.9
config.php

$config['base_url'] = 'http://localhost/CodeIgniter-3.1.9/';
$config['index_page'] = '';

.htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>

routes.php

$route['hello/(:any)'] = 'hello/$1';

controller - Hello.php

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Hello extends CI_Controller {

	public function __construct(){
		parent::__construct();

	}
	public function index()
	{
		echo("Hello - index");

		$this->load->view('welcome_message');

	}

	public function hello(){
		echo("hello");
		$this->load->view('welcome_message');
	}

}

When I navigate to http://localhost/CodeIgniter-3.1.9/hello it's loading the Welcome controller.
logs:
DEBUG - 2018-08-24 18:56:47 --> UTF-8 Support Enabled
DEBUG - 2018-08-24 18:56:47 --> No URI present. Default controller set.
DEBUG - 2018-08-24 18:56:47 --> Global POST, GET and COOKIE data sanitized
DEBUG - 2018-08-24 18:56:47 --> Total execution time: 0.0227

Support questions should be asked on the forum, thanks.
ps - remove your superfluous routing rule, which is probably messing things up for you.

That's my bad, I turned on $config['enable_query_strings'] = TRUE; in config that's why it's causing the issue. When I was reading the core uri.php file then it has following comment.
// If query strings are enabled, we don't need to parse any segments.
		// However, they don't make sense under CLI.
		if (is_cli() OR $this->config->item('enable_query_strings') !== TRUE)

I set $config['enable_query_strings'] = FALSE; then everything working fine.


Metadata key coming through empty from AAF - causing parse error

Hey team,
Just stumbled across this issue, which was a fun one to try and debug! When reading an AAF out of Media Composer (a test project for us to look at TITLES clips) we're seeing an issue with how the metadata is being presented, causing a crash in the C++ JSON parser. Within the "Parameters" block, the first Key is empty, with a value of false e.g.
"Parameters": {
    "": false,
    "Angle  ": "135",
    "AvidEffectID": {},
    "AvidParameterByteOrder": 18761,
    "Blue   ": "0",
    "Bold": false,
    "Color Gradient": false,
    "Descenders": true,
    ...
}

Any one have an idea as to what this field is supposed to be? If I manually add in a field it parses fine, but the OTIO that's being generated is coming out this way, meaning there's currently no way for us to read it without manually manipulating it.

AAF that's causing the error here:
TitlesTest_EmpterMetadataKey_190528.aaf.zip


Adjust name of integration container

Codecov Report

Merging #18 (5054e5e) into main (5b49eb6) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #18   +/-   ##
=======================================
  Coverage   87.66%   87.66%
=======================================
  Files           5        5
  Lines         300      300
  Branches       55       55
=======================================
  Hits          263      263
  Misses         37       37

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


V2: Multiple page docs exemple

📚 Documentation
Usecase
As a developer, I want to be able to create 2 pages of documentation.
Why am I writing this?
This is often necessary, and oftentimes developers don't find the right way to do it. One of the official examples from the examples page in the documentation:

Works: https://buildtracker.dev/docs/guides/guides
Not works: https://buildtracker.dev/docs/guides/

Expected result
The image shows the expected result - two pages with two sidebars.

First page is Docs with url /docs and index-page on /docs/doc1 from dir docs.
Second page is Resources with url /resources and index-page on /resources/doc2 from dir resources.

Solution
Warning: md-link from resources to docs should be relative like [doc1](../docs/doc1)
// sidebarsDocs.js
module.exports = {
  docs: {
    Installation: ["doc1"], // from path `docs/doc1`
  },
};
// sidebarsResources.js
module.exports = {
  resources: {
    Installation: ["doc2"], // from path `resources/doc2`
  },
};

Then need to create files from docusaurus.config.js folder:
docs/
- doc1.md
resources/
- doc2.md

Then need to connect two content-docs plugins (one from preset-classic) with different ids.
// docusaurus.config.js
  presets: [
    [
      "@docusaurus/preset-classic",
      {
        docs: {
          id: "w1", // for first plugin-content-docs with "docs/" path
          homePageId: "doc1",
          sidebarPath: require.resolve("./sidebarsDocs.js"),
        },
      },
    ],
  ],
  plugins: [
    [
      "@docusaurus/plugin-content-docs",
      {
        id: "w2", // for first plugin-content-docs with "resources/" path
        homePageId: "doc2",
        path: "./resources", // Path to data on filesystem, relative to site dir.
        routeBasePath: "resources", // URL Route.
        include: ["**/*.md"],
        sidebarPath: require.resolve("./sidebarsResources.js"),
      },
    ],
  ],

And set routes to themeConfig.navbar.items.
// docusaurus.config.js: themeConfig.navbar.items
{
        to: "docs/",
        label: "Docs",
        position: "left",
},
{
        to: "resources/",
        activeBasePath: "resources",
        label: "Resources",
        position: "left",
}

Alternative expected result

First page is Docs with url /docs and index-page on /docs/doc1 from dir docs.
Second page is Resources with url /docs/resources and index-page on /docs/resources from dir docs/resources.

Solution
// sidebars.js
module.exports = {
  docs: {
    Installation: ["doc1"],
  },
  resources: {
    Installation: ["resources"],
  },
};

Then need to create files from docusaurus.config.js folder:
docs/
- resources/
- - // other files for Resources page will be in this folder
- resources.md // index-page for Resources page, the same name with a content folder at the same level
- doc1.md

Then need to connect two content-docs plugins (one from preset-classic) with different ids.
// docusaurus.config.js
  presets: [
    [
      "@docusaurus/preset-classic",
      {
        docs: {
          // "docs/" path
          homePageId: "doc1",
          sidebarPath: require.resolve("./sidebars.js"),
        },
      },
    ],
  ],

And set routes to themeConfig.navbar.items with activeBaseRegex.
// docusaurus.config.js: themeConfig.navbar.items
{
        to: "docs/",
        activeBaseRegex: "^(.*docs\\/(?!(resources\\/?)).*)", // ignore route "docs/resources/..."
        label: "Docs",
        position: "left",
},
{
        to: "docs/resources/",
        activeBasePath: "docs/resources",
        label: "Resources",
        position: "left",
},

P.S. I think this configuration is not intuitive, so it can be seen as a suggestion for simplification.

Hey @NikitaIT
The docs multi-instance system is brand new, it wasn't working before alpha 61, and we can definitively improve the doc (I left it undocumented on purpose so that we can get a bit of feedbacks of early adopters before writing some doc.
Both options look valid to me, but it will also depend on how you see versioning working on your site, and what URLs you want. If you have 2 plugin instances, each can have different versionion schemes (ios/android sdks for example). Also each plugin instance has its own URL prefix.
One plugin instance means shared URL prefix + same versioning for both docs.
Also worth mentioning that you can use special navbar items to link to docs: https://v2.docusaurus.io/docs/theme-classic/#navbar-docs-version-dropdown
Also, if you use docs, it means you want to use doc navigation, a sidebar etc... If you don't need that, you can also simply created a markdown page (added recently): https://v2.docusaurus.io/docs/creating-pages/#add-a-markdown-page

It seems setting id in the classic with versioning is unnecessary, and breaks the documentation. So I remove id: "w1" from the example.

Sorry but I don't understand what you mean 😅 if you can send a PR to Docusaurus website that allows me to show the problem on the deploy preview that would be helpful.

@slorber This is not very important, just when adding folders with versions, the second instance of the plugin docs parses them again(without disableVersioning). Because both plugins do it at the same time, this leads to an error. The error is expected, but I decided to write about it here, just in case.

Thanks @NikitaIT for a great tutorial on getting multiple, separate and unique, documentation pages!

I tested out version 1 on a clean install, and it returns a 404 error when navigating to Resources.
See the code here.

I was able to get three different "docs" sections added while running version 2.0.0-alpha-64.
They each have sub-directories, and custom sidebars. Worked really well once I finally figured it all out. Often, when I added new docs into new sub-directories, I had to restart yarn for the new files to be recognized. Other than that, if this was explicitly documented it would have saved me at least an hour of fidgeting and guessing.
plugins: [
    [
      "@docusaurus/plugin-content-docs",
      {
        id: 'dev',
        path: "./dev", // Path to data on filesystem, relative to site dir.
        routeBasePath: "dev", // URL Route.
        include: ["**/*.md"],
        sidebarPath: require.resolve('./sidebarsDev.js'),
      },
    ],
    [
      "@docusaurus/plugin-content-docs",
      {
        id: 'support',
        path: "./support", // Path to data on filesystem, relative to site dir.
        routeBasePath: "support", // URL Route.
        include: ["**/*.md"],
        sidebarPath: require.resolve('./sidebarsSupport.js'),
      },
    ],
    [
      "@docusaurus/plugin-content-docs",
      {
        id: 'marketing',
        path: "./marketing", // Path to data on filesystem, relative to site dir.
        routeBasePath: "marketing", // URL Route.
        include: ["**/*.md"],
        sidebarPath: require.resolve('./sidebarsMarketing.js'),
      },
    ],
  ],

sorry about that, I keep in mind to write this doc soon :)

@slorber Not a problem at all, and not a complaint. Just wanted to chime in to validate that it's working and worth some solid docs. V2 really is slick, great work!

@mathetos
I think I need a link to the full docusaurus.config.js file in your reply.
Something is wrong with my setup because I don't compile md files for the dev folder etc.
Have you remove the docs section in preset?
How it looks the items of the navbar?
By the way:
npx docusaurus --version
2.0.0-alpha.70

FYI I just added documentation for the multi-instance support.
Can early adopters read it and tell me if something is not clear enough please?
https://v2.docusaurus.io/docs/next/docs-multi-instance/

@slorber I haven't tested your sample code, but when I was working on mine above back in September, I couldn't get the relative path to work correctly as you have it in your snippet, which is why in mine above the path is path: "./support" instead of path: "support" I can test it later perhaps, or maybe there's an update in V2 that addresses that?
Other than that, the doc looks great!

@mathetos that's surprising because the default path is actually just docs and it works fine for a long time now.
Thanks for the feedback


Add required_ruby_version to chef-utils and chef-config

These are getting pulled in all over and that's causing problems on
older Ruby releases.
Signed-off-by: Tim Smith<EMAIL_ADDRESS>

i thought we equality locked this in the chef gem, but yeah this is obviously correct


Eureka Discovery Server Build Failed

When running ./mvnw clean verify -Ddockerfile.skip the build fail on building "Eureka Discovery Server" due to ${app.eureka.user} not found

Desktop:

OS: Windows 10
Java 14
Maven 3.6.1

Possible Solution
Add app.eureka.user and app.eureka.pass values to bootstrap.yml

@benstitou Thanks very much, I was able to reproduce it, will fix it and update repository as soon as possible.


Bug 🐛
Using the normalise wrapper will cause a KeyError when using the Eplus-datacenter environment.
To Reproduce
Minimal example:
import gym
import numpy as np

import sinergym
from sinergym.utils.wrappers import LoggerWrapper, NormalizeObservation
from sinergym.utils.constants import RANGES_DATACENTER

env = gym.make('Eplus-datacenter-hot-discrete-v1')
env = NormalizeObservation(env, ranges=RANGES_DATACENTER)
env = LoggerWrapper(env)

observation = env.reset()

for i in range(1):
    action = env.action_space.sample()
    print("Action taken: ", action)
    # take selected action in environment
    observation, reward, done, info = env.step(action)
env.close()

Error:
Traceback (most recent call last):
  File "/workspaces/sinergym/try_env.py", line 12, in <module>
    observation = env.reset()
  File "/workspaces/sinergym/sinergym/utils/wrappers.py", line 236, in reset
    obs = self.env.reset()
  File "/usr/local/lib/python3.10/dist-packages/gym/core.py", line 320, in reset
    return self.observation(observation)
  File "/workspaces/sinergym/sinergym/utils/wrappers.py", line 44, in observation
    if(self.ranges[variable][1] - self.ranges[variable][0] == 0):
KeyError: 'Zone Lights Total Heating Rate(East Zone)'

Expected behavior
The observation values should be normalised like in the given example.
System Info
Describe the characteristic of your environment:

Describe how Sinergym was installed - Using Docker container.
Sinergym Version - 2.1.1
OS: Mac OS - Apple Silicon
Python version - 3.10
Gym version - 0.21.0

Additional context
Please let me know if I am missing anything regarding the implementation. Additionally, I would be happy to help contribute in resolving this issue.
Checklist

[x] I have checked that there is no similar issue in the repo (required)
[x] I have read the documentation (required)
[x] I have provided a minimal working example to reproduce the bug (required)

:pencil: Please, don't forget to include more labels besides bug if it is necessary.

Hi @kad99kev!
Understood, I will take a look at it and I will comment you as soon as possible.

Hi @kad99kev, I just detected the bug. In one of the recent versions of sinergym the variable called Zone Lights Total Heating Rate was added for both zones in the datacenter default observations.
It turns out that the normalization wrappers need a range of values for each variable, as you can see in constants.py. As I point out in issue #250, this is because we haven't found a way to read those ranges of values directly from the building IDF, so we have to run simulations, see the ranges of values it reaches and write them manually in a dictionary which is the one indicated in the wrapper's construction.
Sorry for the inconvenience, we will integrate the changes in the main branch.

You have available the function ranges_getter in common.py.
Just run your simulation (as many episodes as you want) with the wrapper logger active. Then, you run this function, passing the path of the experimentation folder as a parameter. This function reads all the subfolders of the available episodes and store the global maxima and minima values of each variable in a dictionary. Then you would have to update the range dictionary for that environment in constants.py.
This is being covered with tests in PR #251, as well as adding some documentation for clarification. In any case, I have decided to delete the Zone Lights Total Heating Rate (Both Zones) variables from the default observation, as in principle it doesn't seem relevant to control the temperature setpoints, but you know how it can be added if you are going to use normalization ;). We will try to improve this part, as discussed in issue #250.
Thank you so much @kad99kev!


ValueError: Failed to find a callable in <NULL> on dill.dumps(GeneratorType)

Code to reproduce:
import pyteleport as pt, dill as d

def gf():
    yield 1
    yield 2

d.dumps(gf())

Stacktrace:
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/diwank/.local/lib/python3.10/site-packages/dill/_dill.py", line 263, in dumps
    dump(obj, file, protocol, byref, fmode, recurse, **kwds)#, strictio)
  File "/home/diwank/.local/lib/python3.10/site-packages/dill/_dill.py", line 235, in dump
    Pickler(file, protocol, **_kwds).dump(obj)
  File "/home/diwank/.local/lib/python3.10/site-packages/dill/_dill.py", line 394, in dump
    StockPickler.dump(self, obj)
  File "/home/diwank/.asdf/installs/python/3.10.5/lib/python3.10/pickle.py", line 487, in dump
    self.save(obj)
  File "/home/diwank/.local/lib/python3.10/site-packages/dill/_dill.py", line 388, in save
    StockPickler.save(self, obj, save_persistent_id)
  File "/home/diwank/.asdf/installs/python/3.10.5/lib/python3.10/pickle.py", line 560, in save
    f(self, obj)  # Call unbound method with explicit self
  File "/home/diwank/.local/lib/python3.10/site-packages/pyteleport/dill_tools.py", line 39, in pickle_generator
    morph_fun = morph_stack(snapshot(obj.gi_frame, stack_method="direct"), root=False, flags=0x20)
  File "/home/diwank/.local/lib/python3.10/site-packages/pyteleport/snapshot.py", line 241, in snapshot
    raise ValueError(f"Failed to find a callable in {vstack[stack_size]}")
ValueError: Failed to find a callable in <NULL>

Thanks for pointing this