use timelimit to kill deadlocked tests

restrict any test to 10s
don't trigger the 1h timeout for the auto-tester
get a make error message w/ a specific test on timeout failure
the timelimit program is used b/c the auto-tester already relies on it

Because the STARTING message (589e5c298623033e2a291f9214252e50845e6908) didn't actually solve the problem that it's difficult to figure out which test deadlocked.

Great in concept, but the 'command' command doesn't exist on the linux platforms:
make: command: Command not found
The 'which' command ought to do the trick though.  The '-s' option will suppress output and just set the return value.

Great in concept, but the 'command' command doesn't exist on the linux platforms:
make: command: Command not found

How can that not exist if it's a bash builtin?
http://www.gnu.org/software/bash/manual/html_node/Bash-Builtins.html#index-command
Updated to use which instead.

The '-s' option will suppress output and just set the return value.

My which doesn't have that and $(if only looks for empty/non-empty string anyhow.

Auto-merge toggled on

valid question, don't have a good answer off the top of my head.

Now that this is done we can remove the pointless STARTING output https://github.com/D-Programming-Language/druntime/pull/1505.


Graph filter

Don't remove node/link from the graph when there are filtered, just hide them

Not the good issues nvm


Add root finding ode subclass.

No tests and not much documentation right now.
This is supposed to be a super simple root finding subclass of ode. If there is interest in this code I would be happy to provide tests and documentation.

Some of the ODE integrators natively support this sort of stopping conditions. But more generally, I don't think this is a good interface that allows efficient evaluation. This operation - integrate until a function hits a value - can be done with reasonable efficiency only for some integrators. These are the ones that support "dense output": normally, differential equation integrators only permit integration in one direction, call it "forward"; the integrator takes discrete steps forward, and these can be shortened but not safely lengthened. "Dense output" means that you can efficiently evaluate the solution anywhere within the last step. So the way to do this is, repeatedly let the integrator take whatever steps it wants, evaluating the condition at the end of the step. When it passes the desired value (conventionally zero), that last step provides a bracketing interval suitable for brent, and the integrator's dense output permits easy evaluation within that last step.
I have some code to do this, but for complicated reasons it's cython calling into a C++ DE solver. Nevertheless I think we should think more about the interface to use for this kind of technique.

Looking at the source code in scipy.integrate, I think explicit handling of dense output would need to be added first (which is a good idea regardless). But then it would be straightforward to add code in integrate() which would provide a stopping criterion for any integrator that supports dense output.
Wouldn't hurt to have some new solvers in there too - the only reentrant ones don't seem to work for stiff problems.

This is indeed a very naive implementation that does NOT use the efficient root finding capabilities of the native-code solvers. Doing that would require actual new wrapping code and some more work.

Instead, the current code is the simplest possible solution, and also the one being suggested for this type of problem if you look at the mailing list over the last few years. (see http://mail.scipy.org/pipermail/scipy-user/2010-March/024890.html). I do agree though that backtracking and reseting is very inefficient.

The "API" here is the simplest I could think of, but I am open to criticism.

In conclusion, if the consensus is that the naive "no-new-wrapping-code" solution presented here is a bad idea, I would be glad to close this pull request. (However, I would like to point out that this feature has been asked for for a few years and new wrapping code has not be written yet and I do not know enough of the scipy innards to volunteer to do it.)

The main thing to be careful of is the user-visible interface, because once that gets released, we're stuck with it. I think the simplest interface I can picture is to simply modify the integrate method to take an additional argument, a function, and to stop when that function changes sign if that happens before the stopping time. (Multiple stopping functions is a possible wishlist item - for example, stop when the trajectory leaves a box - but could use the same interface, with a function returning a vector instead of a scalar.)
If for the moment that has to be implemented by inefficient resetting, so be it. But I'm not sure that the additional code required is a substantial challenge, particularly if you accept that not every integrator has dense output and can support this.

Thanks for the feedback. I will do the suggested modification (but I will not try my hands at the efficient solution) and let you guys decide whether it is worth pursuing after that. (I will probably do it later in the week/weekend).
(I only now noticed that you are the same person that wrote the old email I quoted. Sorry for the redundancy, but thanks anyway.)

As it currently stands, only vode and zvode support the step method, but both of them can backtrack within the last step without any additional wrapping of compiled code: you simply call the run method with a step backwards. lsoda is also capable of this without additional wrapping code, with essentially the same interface, but for some reason the single-step option is not provided from python; it'd be exactly the same code as for vode/zvode. The Dormand-Prince integrators have a separate not-yet-wrapped function for dense output; someone would have to write an f2py spec. But even just a start using vode would give people a way to do this cleanly, and establish an interface for doing this cleanly.
I put some better single-step and dense output handling code in https://github.com/aarchiba/scipy/tree/ode_stop but I'm still not sure of the cleanest interface. Really I'd prefer to use single integrator steps throughout, using dense output to give the user their values, but integrating this cleanly with the existing interface is awkward.

FWIW: For the lsoda wrapper, it might be nice to replace lsoda with lsodar, a version of lsoda with root-finding implemented in the Fortran code.  lsoda is also the backend of odeint, so it is also conceivable that odeint could be changed to use lsodar, with a rootfunc (or whatever) argument added. In fact, this has been done before, but not as part of scipy.  (If I find links to that code, I'll add it here.)  Unfortunately, I don't have time at the moment to work on this myself.

I believe I wrote a lsodar wrapper,  back in the mists of time, and there's one in pydstool. But I think a better solution is a clean interface to solvers with dense output (which is all of the ones we have, though some require a little extra wrapping), so that a generic scipy root-finder can be used. Since conditions and right-hand sides are forced to go through python, the extra cost of doing the root-finding in python is usually modest.

@aarchiba That's sounds fine to me.  The most important first step is deciding on a reasonable API.
Speaking of which, are y'all familiar with Matlab's event location API (http://www.mathworks.com/help/matlab/ref/odeset.html#zmw57dd0e478447)?  I won't suggest copying the API, but I will put in a request for similar functionality.  In Matlab, one can choose to detect only events where the function passes through the root in a specific direction (i.e. increasing or decreasing).  One can also tell the solver to stop when a certain event is detected.  (I guess this option would be available automatically when using scipy's ode class, which requires the user to write their own loop [grumble, grumble].  So an isterminal flag would probably make more sense for a future enhancement of odeint.)

Well, the "reasonable API" is a whole kettle of fish. I actually find the current arrangement quite a mess, but to some extent we are locked into it by compatibility. But I implemented an integrator object for another project (with a bunch of strange and unusual constraints, so it's not very general code). The general structure is:
Inner integrator object:

Setup specifies RHS, initial conditions, direction, error tolerance
Step function advances by one integrator-chosen step
Attributes reveal t,y at beginning and end of step
Dense evaluator allows y to be computed for any t within the last step

Outer driver object:

Setup specifies RHS, initial conditions, direction, error tolerance, event functions
advance function moves the solution forward until the next time point or event
Attributes reveal time and system state
run function produces an array of system states

In my case, the run function takes a list of values for one of the event functions and produces a value every time the (increasing) event function crosses an input value. In general, you'd want to be able to specify a variety of different stopping criteria (event function reaches a value, time reaches a value) and the return array would specify why each data point was included (optionally, some events could cause the solver to actually stop rather than just returning a point). But the point is that the outer driver object provides event detection and odeint()-like functionality, while the inner object provides a relatively thin wrapper around the underlying solver.
It might be possible to provide such a setup without much changing the current user-visible interface. scipy.integrate.ode could become the outer object, while the current non-public solver-wrapping objects could be restructured to be like the inner objects. It would mean moving the integrator loop to python, but since the RHS evaluations always go through python anyway, I don't think that's necessarily a problem.

Re: API. My view here is that it would be easiest to do the redesign from scratch, in order not to be forced too much by suboptimal design decisions (different argument order for ode vs odeint, outer loop must be written in Python, odeint & ode are fully separate, output array not provided as argument, no way to write RHS in compiled language). The odeint API is simple enough that it could be retained, but ode would seem best to be replaced.
I think we should avoid assuming RHS evaluations go through Python. While this may be the most usual case, we should provide some way to write the callable in Cython etc. For example, integrate.quad can take ctypes callables and skip overheads (which we use in Scipy's elliptic harmonic special functions for significant speedup). This is not super-convenient, but I think there's plenty of room for improvement in this direction, and trying to find a reusable solution here would likely benefit the whole "ecosystem". For example, Cython already seems to provide enough information on its exported function objects that they could be dealt with.

Ah. Perhaps this discussion needs to go to the mailing list? It seems like the wrapping effort to provide one (let alone many) solvers with the ability to use compiled RHS functions would be substantial, but if it's feasible then one needs to worry more about the speed of the driver code. But indeed if ODE evaluation can be made fast that opens a variety of possibilities. I'm still inclined to use the underlying solvers in a one-step-at-a-time mode with dense evaluation, and just move the driver code to cython when it needs to be fast.

In my view, vode, zvode and lsoda must be deprecated and replaced by their successor, cvode (yes, no true z form then, you need to split it up).
Wrappers out there have possibility to pass cython rhs, eg https://github.com/bmcage/odes/blob/master/scikits/odes/sundials/cvode.pyx
Also their, rootfn is used to pass root function capability. You really want to use that and not some higher level optimization loop which you cannot trust.

Note that there is a thread on scipy-dev discussing interfaces to ODE solvers, which might be a better place for dicsussion.
First: Why do you think the current solvers need to be deprecated? Do you have examples of problems where they fail? It appears that CVODE uses the same underlying approach (Adams-Moulton/BDF). It also appears that ZVODE takes advantage of analyticity, at least for stiff problems; is splitting into real problems as effective?
Second: Why do you think these solvers' built-in root-finding algorithms are better than those in scipy? Implementing these in scipy using the (existing or new) solvers' dense output allows a uniform flexible interface to stopping conditions. For example: there can be many conditions which trigger the solver to stop, they can either cause the solver to actually stop or simply log values, they can be restricted to sign changes in a particular direction, or they can occur whenever a function takes one of a long list of possible values. Using FORTRAN-level solvers' stopping conditions may well offer only some of these possiblities, and the subset will depend on the solver. On the other hand, scipy already has good root-finding routines, implementing specialized ones is not difficult, and dense output is a valuable tool for other reasons.

CVODE (sundials) )is maintained. Long ago I used several, CVODE outperforms them in accuracy. So it's a matter of a more modern, more tested, and improved codebase. CVODE was developed by the same people who originally wrote LSODE/A and VODE based on the lessons learned. No ZVODE might be problematic to replace, I have no experience with that. I would suggest writing Alan C. Hindmarsh to ask why the functionality is not present in current sundials and what he would use for those type of problems today.
As to the root-finding, I know from discussions on the sundials mailing list that rootfinding in ode solvers is a difficult thing to get correct. Algorithm used in https://computation.llnl.gov/casc/sundials/documentation/cv_guide.pdf section 2.4, so also a secant method.
The important part however is that this is checked every internal step of the solver, not the output steps. I interpret this pull request as checking event on the output steps, which need not show sign changes in the events.

I recommend the thread on scipy-dev: http://thread.gmane.org/gmane.comp.python.scientific.devel/19752
As described in that PDF, the root-finding is not actually very complicated; it acts just as I was describing, using dense output within each (internal) solver step to locate roots with a modified secant algorithm. (Actually if derivatives can be obtained from dense output a careful Newton-type root finder might be faster.) What to do with those roots is a more complicated issue; I would rather use Cython to provide a uniform interface for root-finding for several different solvers, in case users want to choose the solver that works best for their problem. This also dramatically simplifies the code required to interface with a new compiled solver.
I have had a couple of tricky ODE-solution problems, including one I am currently working on, and I would like to ensure that scipy's ODE tools provide enough generality to solve at least them (modulo some headaches to do with high-precision internal variables, which I don't think we want to get into in scipy).

As always, email threads go in tangent directions. I'm commenting here because of that mailing thread.
This pull request here does not allow me to understand the root finding is on the internal steps. Perhaps it should be expanded with test and example
THere are two things important:

speed: you don't want to force using single step in python to do root finding. So working with normal output and having root finding is best. If this mechanism links to the internal steps somehow, then fine
multiple root functions: you don't want to determine independently several roots based on the code in this pull request. It should happen in global fashion as in the manual of cvode pointed to earlier, eg the rhs function might change after a first root.

As to solvers that are good for a problem. For stiff problems, not a single one in scipy is good. Allowing users to choose at the moment is allowing them to choose between different bad solutions. I started odes scikit development within a project because of that. The solvers present are a disservice to the users compared to eg Matlab. As indicated by people in the email thread, I'm not sure there is a good one for non-stiff problems either.
Therefore, I would advocate moving forward to one good stiff solver, and one good adaptive timestepping RK solver. The good stiff solvers have root finding, no need to add something new then.
For more complex uses, there are specific ODE python packages that interface special case solvers. I don't think scipy should worry about those.

To clear up some confusion about the PR I updated the title and description. I will try to finish this PR this week.

The reason for the thread and not the PR is that this PR is taking the wrong approach. So discussing its specifics is not productive.
Do you have a reference that shows LSODA or ZVODE are not good for stiff problems? They both include automatic method switching and support the same underlying BDF approach CVODE does. I do think we need a B-S or similar solver - not available from CVODE, and so needing a root-finding implementation.
Also discussed in the email thread is writing the driver in cython, and setting up ways to get the RHS and stopping functions to be called without passing through the python interpreter. So speed need not be a problem.
So please, contribute to the email thread instead.


Feature request: Automatically take screenshot when test fails

Good idea!

Thanks. My recommendations:

Take advantage of the fact that this repo is relatively new, and don't make an option for this. Just always do this by default.
When someone requests an option, you can add an option. But it should be on by default, because I think it would be useful most of the time.

@neoziro @melissachang - I played with this on one of our projects (created a reporter which take screenshots for failing tests). It is not 100% ready but I would be happy to help here.
One nice feature: upload those screenshots (s3?) so we can see those on CI as well.
WDYT?

I like the idea of the automation behind this, and +1 to uploading to S3 for a CI debug. But as a user of jest-puppeteer, it would feel a bit of a reach to me to have this on by default and not configurable. I agree this would be a great feature to have but I could see an issue where for someone breaking a build, many unexpected images are now created which could slow down the testing process. I love the idea of this 👏  @melissachang !
So +1 to opt-in and the ability to have it configurable.

Good point, default off is probably safest. CI integration would be awesome.

Is anyone else working on this? If not I might try and get something working...

@callumlocke you are welcome 😀

use this setupTestFrameworkScriptFile in jest config
setupTestFrameworkScriptFile: './hack-expect.js',

// hack-expect.js
const expectPuppeteer = require('expect-puppeteer');
const getPuppeteerType = require('expect-puppeteer/lib/utils').getPuppeteerType;

const puppeteerMatchers = {
  'toClick': 0,
  'toDisplayDialog': 0,
  'toFill': 0,
  'toFillForm': 0,
  'toMatch': 0,
  'toMatchElement': 0,
  'toSelect': 0,
  'toUploadFile': 0,
  'not': {
    'toMatch': 0,
    'toMatchElement': 0,
  },
}

function createMatcher(actual, matcher) {
  return async (...args) => {
    try {
      return await matcher(...args);
    } catch (error) {
      await actual.screenshot({ path: './screenshot.png' });
      throw error;
    }
  }
}

if (typeof global.expect !== 'undefined') {
  const originalExpect = global.expect
  global.expect = (actual, ...args) => {
    const matchers = originalExpect(actual, ...args);

    const type = getPuppeteerType(actual);
    if (type == null) {
      return matchers;
    }
    Object.keys(puppeteerMatchers).forEach(key => {
      if (key === 'not') return;
      if (matchers[key]) {
        matchers[key] = createMatcher(actual, matchers[key])
      }
    })

    Object.keys(puppeteerMatchers.not).forEach(key => {
      if (matchers.not[key]) {
        matchers.not[key] = createMatcher(actual, matchers.not[key])
      }
    })
    return matchers;
  }
  Object.keys(originalExpect).forEach(prop => {
    global.expect[prop] = originalExpect[prop];
  })
}

This is a very desirable feature. As far as I understand, this should be done with the help of a jasmine reporter. But the version of jasmine that is used only works with synchronous calls. And this creates some problems.
At the moment, the best I've been able to do for myself is to redefine the "it" calls. This method has some disadvantages, but it may be useful to someone.
// package.json
{
  // jest section
  "preset": "jest-puppeteer",
  "setupTestFrameworkScriptFile": "./jest-setup.js"
}

// jest-setup.js
const fs = require('fs');
const jestPreset = require('jest-puppeteer/jest-preset');
const expectPuppeteer = require(jestPreset.setupTestFrameworkScriptFile);

const { browser } = global;

const env = jasmine.getEnv();
// create a reference to original "it" method
const { it: originalIt } = env;

// replace jasmine "it" method with the new one which returns original
env.it = (name, fn, ...args) => {
  const newFn = async (...fnArgs) => {
    try {
      return await fn(...fnArgs);
    } catch (e) {
      // get the filename where the error occurred
      // PS this is a weak place and it does not work for 100% - for some errors can be "null"
      let message = e.stack;
      message = message.match(new RegExp(`${__dirname}(.*)`));
      if (message && message[1]) {
        message = message[1]
          .replace(/^.*[\\/]/, '')
          .replace(/:.+$/, '');
      }

      // run through opened pages also take a screenshot and save source code of the page to the "./artifacts" folder
      const pages = await browser.pages();
      for (let page of pages) {
        const title = await page.title();
        // filter "about:blank" pages and pages without the title attribute
        if (title) {
          const fileName = `${message}__${name}__${title}`.replace(/\s+/g, '_');
          const path = `${__dirname}/artifacts/${fileName}.png`;
          await page.screenshot({ path });
          const content = await page.content();
          await fs.writeFile(`${__dirname}/artifacts/${fileName}.html`, content);
        }
      }
      throw e;
    }
  }
  return originalIt(name, newFn, ...args);
}

module.exports = expectPuppeteer;

@amid2887 if you want to getFilename and testName, the right way is:
const getState = require('expect/build/jest_matchers_object').getState;
console.log(getState());

And await browser.pages() may return unexpected page because of  concurrency.

@wangtao0101 thanks for the advice - it works more stable than previous one =)
I forgot to mention that I use jest --runInBand mode because I have to login in tests with different user types and tests can have a few opened window at the same time.
But yeah, this part should be done in another way...
Does anyone have any suggestions?

Follow up in #131

Use this package:
https://github.com/jeeyah/jestscreenshot


rel_to_oxygen "facultative" clarification?

"facultative" is a permissible value for rel_to_oxygen
We assume that means "facultative anaerobe" but does it need to be clarified? There is some precedent for the phrase "facultative aerobe"
Are these two phrases just synonyms?

https://en.wikipedia.org/wiki/Facultative_anaerobic_organism
https://www.researchgate.net/post/What_is_the_deference_between_faculitative_aerobic_and_faculitative_anaerobic_bacteria

One motivation for this question is that both "facultative anaerobes" and "facultative anaerobes" can be found in the rel_to_oxygen column in  https://ftp.ncbi.nlm.nih.gov/biosample/biosample_set.xml.gz. BBOP/NMDC have a project to repair suspect values like that.
There are other unexpected values for rel_to_oxygen in biosample_set.xml... how interested is this group in going over them?

Are we talking about environments or organisms here?
See also https://en.wikipedia.org/wiki/Aerobic_organism
The INSDC biosample dataset (biosample_set.xml) has some numeric rel_to_oxygen values... is a mapping possible?


Using withDevTools throws an error when the state has bigint types

Hi guys,
I'm using ngrx/toolkit only to make my SignalStore available to Redux Dev Tools.
Hence, the only method in use is withDevTools, and I am passing a string.
My project is using:
// excerpt of package.json dependencies
    "@ngrx/operators": "^17.1.1",
    "@ngrx/signals": "^17.1.1",
    "@ngrx/store": "^17.1.1",
    ...
    "ip-address": "^8.1.0",
     "@angular-architects/module-federation": "^17.0.6",
    "@angular-architects/ngrx-toolkit": "^0.1.2",
    ...

When I started using ip-address to perform operations on IPs, I got the following error:
# Chrome Dev Console Log
ip.component.ts:21 ERROR TypeError: Do not know how to serialize a BigInt
    at JSON.stringify (<anonymous>)
    at ot.stringify (<anonymous>:1:5274)
    at Dh (<anonymous>:4:2215)
    at k (<anonymous>:4:2313)
    at q (<anonymous>:6:311)
    at qe (<anonymous>:6:921)
    at Object.g [as send] (<anonymous>:6:2585)
    at EffectHandle.effectFn (angular-architects-ngrx-toolkit.mjs:26:20)

and this is the offending function in toolkit
function initSynchronization() {
    effect(() => {
        if (!connection) {
            return;
        }
        const stores = storeRegistry();
        const rootState = {};
        for (const name in stores) {
            const store = stores[name];
            rootState[name] = store();
        }
        const names = Array.from(currentActionNames);
        const type = names.length ? names.join(', ') : 'Store Update';
        currentActionNames = new Set();
        connection.send({ type }, rootState);
    });
}

Is it a bug or is there something that can be done from my side to mitigate this before reaching toolkit ?
My implementation wraps Address4 or Address6  (from ip-address) and creates instances of them that go into the state.
Given my business logic, I do need the actual instance and not a simplified representation of it, so, sadly, this is not a solution.
Thanks for the great job.

UPDATE:
I was able to solve the problem by reimplementing the toJSON method in my wrapper,
I'm posting this in case anyone else faces the same issue in the future.
export class MyWrapper{

  #nativeIp: Address4 | Address 6;

  toJSON(){
    // define serialization logic here,
    // avoiding circular deps, and do not expose bigints to be serialized.
    return this.#nativeIp.correctForm();
  }

}

The issue is still valid for the case you have no way to reimplement JSON.stringify

Dear @robmanganelly , thanks for posting this. Would it be possible for you to add a PR, or should some of us do it?

Hello. I have a PR ready.
But I think I found another problem. It could be my own mistake though, so,
please check the spec file I changed and look for comment on line 137
On Tue, Apr 2, 2024, 14:44 Rainer Hahnekamp @.***>
wrote:

Dear @robmanganelly https://github.com/robmanganelly , thanks for
posting this. Would it be possible for you to add a PR, or should some of
us do it?
—
Reply to this email directly, view it on GitHub
https://github.com/angular-architects/ngrx-toolkit/issues/29#issuecomment-2032797786,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AWTAHEPD7E7Z3ZYH6NI3OZ3Y3L4BRAVCNFSM6AAAAABFTVT4MWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMZSG44TONZYGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

done


feature request: add support for google fonts

assgn to me

As of now, we don't want to list all possible google fonts in the font picker, but instead keeping it minimal. I see a possibly by extending excalidraw with a plugin / configuration to load google fonts, but listing all fonts is non trivial (i.e. due to the current need of harcoding font metrics per font).


ScrollableState asserts

15:36:23.600: I/flutter : ══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
15:36:23.602: I/flutter : The following assertion was thrown during performLayout():
15:36:23.606: I/flutter : Build scheduled during frame.
15:36:23.609: I/flutter : While the widget tree was being built, laid out, and painted, a new frame was scheduled to rebuild
15:36:23.611: I/flutter : the widget tree. This might be because setState() was called from a layout or paint callback. If a
15:36:23.613: I/flutter : change is needed to the widget tree, it should be applied as the tree is being built. Scheduling a
15:36:23.616: I/flutter : change for the subsequent frame instead results in an interface that lags behind by one frame. If
15:36:23.618: I/flutter : this was done to make your build dependent on a size measured at layout time, consider using a
15:36:23.620: I/flutter : LayoutBuilder, CustomSingleChildLayout, or CustomMultiChildLayout. If, on the other hand, the one
15:36:23.624: I/flutter : frame delay is the desired effect, for example because this is an animation, consider scheduling the
15:36:23.627: I/flutter : frame in a post-frame callback using SchedulerBinding.addPostFrameCallback or using an
15:36:23.630: I/flutter : AnimationController to trigger the animation.
15:36:23.633: I/flutter :
15:36:23.636: I/flutter : When the exception was thrown, this was the stack:
15:36:23.646: I/flutter : #0      BindingBase&SchedulerBinding&GestureBinding&ServicesBinding&RendererBinding&WidgetsBinding._handleBuildScheduled.<anonymous closure> (package:flutter/src/widgets/binding.dart:199:9)
15:36:23.649: I/flutter : #2      BindingBase&SchedulerBinding&GestureBinding&ServicesBinding&RendererBinding&WidgetsBinding._handleBuildScheduled (package:flutter/src/widgets/binding.dart:197:12)
15:36:23.652: I/flutter : #3      BuildOwner.scheduleBuildFor (package:flutter/src/widgets/framework.dart:1553:23)
15:36:23.656: I/flutter : #4      BuildableElement.markNeedsBuild (package:flutter/src/widgets/framework.dart:2528:11)
15:36:23.658: I/flutter : #5      State.setState (package:flutter/src/widgets/framework.dart:852:14)
15:36:23.661: I/flutter : #6      ScrollableState._setScrollOffset (package:flutter/src/widgets/scrollable.dart:438:5)
15:36:23.665: I/flutter : #7      ScrollableState.scrollTo (package:flutter/src/widgets/scrollable.dart:487:7)
15:36:23.668: I/flutter : #8      ScrollableState.didUpdateScrollBehavior (package:flutter/src/widgets/scrollable.dart:524:5)
15:36:23.671: I/flutter : #9      ScrollableState.handleExtentsChanged (package:flutter/src/widgets/scrollable.dart:539:5)
15:36:23.674: I/flutter : #10     ScrollableViewport._buildViewport.<anonymous closure> (package:flutter/src/widgets/scrollable.dart:995:15)
15:36:23.677: I/flutter : #11     RenderViewport.performLayout (package:flutter/src/rendering/viewport.dart:289:46)
15:36:23.680: I/flutter : #12     RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1448:21)
15:36:23.683: I/flutter : #13     PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:897:18)
15:36:23.686: I/flutter : #14     BindingBase&SchedulerBinding&GestureBinding&ServicesBinding&RendererBinding.beginFrame (package:flutter/src/rendering/binding.dart:207:19)
15:36:23.689: I/flutter : #15     BindingBase&SchedulerBinding&GestureBinding&ServicesBinding&RendererBinding&WidgetsBinding.beginFrame (package:flutter/src/widgets/binding.dart:297:23)
15:36:23.692: I/flutter : #16     BindingBase&SchedulerBinding&GestureBinding&ServicesBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:152:5)
15:36:23.695: I/flutter : #17     BindingBase&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:608:15)
15:36:23.698: I/flutter : #18     BindingBase&SchedulerBinding.handleBeginFrame (package:flutter/src/scheduler/binding.dart:543:9)
15:36:23.701: I/flutter : #19     _beginFrame (file:///b/build/slave/Linux_Engine/build/src/flutter/lib/ui/hooks.dart:48)
15:36:23.704: I/flutter : (elided one frame from class _AssertionError)

same as #5846.


Updates local election content

Updates local election content for York, Penobscot, Knox, Aroostook, and Franklin counties and all towns with election pages on their websites.

No issues spotted.


[Linux] Control fonts?

It's near impossible for me to read the very light gray text on white background. Is there any way to control the size and color of various fonts?

Same as #5797 and #8820 and #8638

The --force-device-scale-factor worked for me. I like 2.
Is there a way to tell it to use some other color for gray? Those parts are still difficult to see. For example, "Prove your Twitter" when you haven't done that yet.


Use maps instead of arrays when possible

Changes:

Makes parameters a map instead of an array. This way we always make sure a name is provided.
Makes servers a map instead of an array. It gives us the advantage of assigning names to each server, e.g. production, development, staging, etc.

The reason behind this change is to facilitate the #107 and #108 features. These features make use of JSON Merge Patch and arrays are particularly "problematic" when trying to merge 2 or more. In the case of JSON Merge Patch, 2 arrays can't be merged and instead the second replaces the first one. If we remove unnecessary arrays from the spec, it will be possible to merge these objects too.

I'm moving forward and gonna merge this PR. Please, if you see something wrong, missing, or just don't agree with the changes, don't hesitate to leave a comment after it's merged. I'll be happy to address these questions afterward.


Add how to skip the change file check to pull request template

Change Summary
skip change file check

Related issue number

Checklist

[ ] Unit tests for the changes exist
[ ] Tests pass on CI and coverage remains at 100%
[ ] Documentation reflects the changes where applicable
[ ] changes/<pull request or issue id>-<github username>.md file added describing change
(see changes/README.md for details)
[ ] My PR is ready to review, please add a comment including the phrase "please review" to assign reviewers

But if you add this to the pull request template, it'll be included in the pull request body by default. 🙃
Options:

Special regex to chat catch this in hooky
Keep it like this, but check manually (I'm not keen)
Have a link to instructions in the template

Ah :smile: :man_facepalming: .
I've changed it and added a link to hooky.
Feel free to close the PR if you think it doesn't make sense at all

Looks good, thanks.
It would be amazing if there was a way to render the PR advice in markdown, before creating a PR, but there doesn't seem to be a way.


[core][texture][text][shapes] Software renderer for 2D

raylib includes a set of ImageDraw*() functions that rely only on CPU memory (no GPU required). Those functions can be used to implement a basic 2d software rendered. Actually, those functions have been improved a lot in performance lately.
Here there are some notes about how it can be implemented, still under consideration:

New compilation flag: USE_SOFTWARE_RENDERER -> Some modules are not required any more: rlgl.h, models.h, camera.h
Texture2D (GPU) should fallback to Image (CPU)
Some modules require functions mapping: core.c, textures.c, text.c and shapes.c
Some functions won't be usable -> code should be commented or pre-processed

Here some design details:
/// core.c
void InitWindow();                   -> Create Image framebuffers (back + front) and NO_CONTEXT window (just for inputs)
void ClearBackground(Color color);   -> ImageClearBackground(Color color);
void BeginDrawing(void);             -> Just timing
void EndDrawing(void);               -> [rlglDraw(), SwapBuffers(), PollInputEvents(), Timming()]

void BeginMode2D(Camera2D camera);                          -> Setup Image transform (matrix/kernel?)
void EndMode2D(void);                                       -> Apply Image transform
void BeginMode3D(Camera3D camera);                          -> no 3d
void EndMode3D(void);                                       -> no 3d
void BeginTextureMode(RenderTexture2D target);              -> Replace internal framebuffer Image by custom one
void EndTextureMode(void);                                  -> Reset drawing to internal framebuffer
void BeginScissorMode(int x, int y, int width, int height); -> Define drawing rectangle (check before ImageDraw() on framebuffer)
void EndScissorMode(void);                                  -> Reset drawing rectangle

static bool InitGraphicsDevice(int width, int height);      -> Create Image framebuffer
static void SetupFramebuffer(int width, int height);        -> Setup Image framebuffer? -> Probably not required
static void SetupViewport(int width, int height);           -> Set Image drawing area?
static void SwapBuffers(void);                              -> Copy Image back buffer to front buffers -> ISSUE: SWAP to SCREEN!

/// textures.c
Texture2D LoadTexture(const char *fileName);                                 -> LoadImage()
Texture2D LoadTextureFromImage(Image image);                                 -> ImageCopy()
TextureCubemap LoadTextureCubemap(Image image, int layoutType);              -> LoadImage()
RenderTexture2D LoadRenderTexture(int width, int height);                    -> LoadImage()
void UnloadTexture(Texture2D texture);                                       -> UnloadImage()
void UnloadRenderTexture(RenderTexture2D target);                            -> UnloadImage()
void UpdateTexture(Texture2D texture, const void *pixels);                   -> ImageDraw()
void UpdateTextureRec(Texture2D texture, Rectangle rec, const void *pixels); -> ImageDraw()
Image GetTextureData(Texture2D texture);                                     -> ImageCopy()
Image GetScreenData(void);                                                   -> ImageCopy() (internal framebuffer)

void GenTextureMipmaps(Texture2D *texture);                                  -> ImageMipmaps()
void SetTextureFilter(Texture2D texture, int filterMode);                    -> Set ImageResize() scale mode
void SetTextureWrap(Texture2D texture, int wrapMode);                        -> Set Image wrap mode -> out-of-scope?

void DrawTexture(Texture2D texture, int posX, int posY, Color tint);         -> ImageDraw()
void DrawTextureV(Texture2D texture, Vector2 position, Color tint);          -> ImageDraw()
void DrawTextureEx(Texture2D texture, Vector2 position, float rotation, float scale, Color tint);       -> ImageDraw()
void DrawTextureRec(Texture2D texture, Rectangle sourceRec, Vector2 position, Color tint);              -> ImageDraw()
void DrawTextureQuad(Texture2D texture, Vector2 tiling, Vector2 offset, Rectangle quad, Color tint);    -> ImageDraw()
void DrawTexturePro(Texture2D texture, Rectangle sourceRec, Rectangle destRec, Vector2 origin, float rotation, Color tint);         -> ImageDraw()
void DrawTextureNPatch(Texture2D texture, NPatchInfo nPatchInfo, Rectangle destRec, Vector2 origin, float rotation, Color tint);    -> ImageDraw()

/// text.c
void DrawFPS(int posX, int posY);                                                   -> ImageDrawText()
void DrawText(const char *text, int posX, int posY, int fontSize, Color color);     -> ImageDrawText()
void DrawTextEx(Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint);                  -> ImageDrawTextEx()
void DrawTextRec(Font font, const char *text, Rectangle rec, float fontSize, float spacing, bool wordWrap, Color tint);     -> no
void DrawTextRecEx(Font font, const char *text, Rectangle rec, float fontSize, float spacing, bool wordWrap, Color tint,
                   int selectStart, int selectLength, Color selectTint, Color selectBackTint);                              -> no
void DrawTextCodepoint(Font font, int codepoint, Vector2 position, float scale, Color tint);                                -> ImageDrawTextEx()

/// shapes.c
void DrawPixel(int posX, int posY, Color color);                                    -> void ImageDrawPixel(Image *dst, int posX, int posY, Color color);
void DrawPixelV(Vector2 position, Color color);                                     -> void ImageDrawPixelV(Image *dst, Vector2 position, Color color);
void DrawLine(int startPosX, int startPosY, int endPosX, int endPosY, Color color); -> void ImageDrawLine(Image *dst, int startPosX, int startPosY, int endPosX, int endPosY, Color color);
void DrawLineV(Vector2 startPos, Vector2 endPos, Color color);                      -> void ImageDrawLineV(Image *dst, Vector2 start, Vector2 end, Color color);
void DrawCircle(int centerX, int centerY, float radius, Color color);               -> void ImageDrawCircle(Image *dst, int centerX, int centerY, int radius, Color color);->
void DrawCircleV(Vector2 center, float radius, Color color);                        -> void ImageDrawCircleV(Image *dst, Vector2 center, int radius, Color color);
void DrawRectangle(int posX, int posY, int width, int height, Color color);         -> void ImageDrawRectangle(Image *dst, int posX, int posY, int width, int height, Color color);
void DrawRectangleV(Vector2 position, Vector2 size, Color color);                   -> void ImageDrawRectangleV(Image *dst, Vector2 position, Vector2 size, Color color);
void DrawRectangleRec(Rectangle rec, Color color);                                  -> void ImageDrawRectangleRec(Image *dst, Rectangle rec, Color color);
void DrawRectangleLines(int posX, int posY, int width, int height, Color color);    -> void ImageDrawRectangleLines(Image *dst, Rectangle rec, int thick, Color color);
// Several shapes drawing functions not supported...

There is one big issue and actually the main stopper for this implementation: How to do the screen buffer display of our Image framebuffer?
 GLFW has a long-time open issue where some mechanism was proposed: https://github.com/glfw/glfw/issues/589
Two main concerns: how to integrate this in raylib (in a simple non-intrusive way) and how useful is this feature. Some answers:

Use preprocessor USE_SOFTWARE_RENDERER to completely separate default functions from software based ones. On textures.c, text.c and shapes.c seems feasible but core.c would require some careful tweaking and probably some functions reorganization or internal preprocessing.
Software renderer could be useful when targeting old devices (consoles), some low-end embedded devices or custom devices with a display attached (Arduino, FPGA-based...). But on those cases, maybe raylib is too high level and beter lower level options exist.

In any case, I opened the issue for reference and comments.

For X11 I use XShmPutImage() if the shared memory extension is available and fall back to XPutImage() if not: https://github.com/mackron/mintaro/blob/master/mintaro.h#L1232. Some of those examples in that GLFW issue you posted look less than ideal. One of them is looping over each pixel and then calling XDrawPoint() which seems crazy inefficient to me. If you're outputting directly to the window, I don't think you need to be creating a new XImage object each frame either.
For Win32 I use StretchBlt(): https://github.com/mackron/mintaro/blob/master/mintaro.h#L1807.

Id say it is an advantage not having any way of rendering it to the screen.
This frees raylib of any platform specific libraries and allows it to compile for any C platform. Just point it to a frame buffer and away you go. Modern MCUs are powerful enough to run it these days. Another use for it is opening a png file from a console app, manipulating it, then saving it to png again, no OpenGL instance or window needed.
If they want to display the image then they can bring there own method that fits the platform.

I think this is a interesting idea. I agree with compiling raylib without requiring the gpu but I also feel some parts might be better made explicit instead. Here are a couple of examples:

How does Texture2D store the Image? If LoadTexture uses LoadImage internally then you need your own storage and id setup similar to opengl. Same for types like RenderTexture2D etc.

I can't take a existing raylib program and enable software rendering without checking what drawing functions are supported. It may be better for users to create their own specific set of rendering functions that they can switch between instead.

Id say it is an advantage not having any way of rendering it to the screen.

I could not agree with this any less. People aren't going to want to stuff around trying to figure out how to get their output onto screen. There's no reason why you can't support both rendering to in-memory buffers and rendering to the screen, which is how it should be in my opinion, because it'll all use a common infrastructure under the hood anyway (I would think).

If they want to display the image then they can bring there own method that fits the platform.

That's just a lazy implementation. raylib is a game development library, and people play games by looking at the screen. Almost everybody who uses raylib is going to want to display the output, and expecting them to just implement their own method to display the output is absolutely ridiculous.

@mackron @Berni8k I think it depends on the kind of user that feature is intended to. Probably low-level embedded-devices coders would feel more confortable with just the pixels on memory, ready to be sent anywhere while the common raylib user (students, hobbyist, people that want to put something on screen quickly...) would prefer to just enable a software renderer and expect the same result as GPU-base rendering... what makes me think about a real use case... why a raylib user would enable the software rendering nowadays?
In any case, both options are possible, the only difference is a SwapBuffers() call. A specific flag can be created for that (i.e. AVOID_SCREEN_BUFFER_SWAP).
@ChrisDill About your questions:

Texture2D does not store the Image data just the OpenGL id when uploaded to GPU. Actually I don't need to create and id system, just doing typedef Image Texture2D should be enough.

raylib already provides ImageDraw*() functions set for software rendering that users can use by themselfs, actually, that software rendering functionality can already be used skipping most parts of raylib.

waw a good fecer with the cpu textures

waw a good fecer with the cpu textures

Imho, if it still depends of OpenGL or a different API, which GLFW/SDL/X11 uses, it isnt really software rendering.

@MikeHart66 as humble as your opinion is - its wrong, you can use these (image routines) without initialising a window (only then does it create a gl context) all the above (no gpu calls) can be used happily, there is no  GLFW or X11 usage and it just works without the GPU - thankfully raylib as nothing to do the sdl.....  its super useful for tools you make to call from a makefile.... (where you really don't need the gpu involved!) and you might need to exactly these conversions
functions not requiring the GPU are clearly marked in raylib.h // comment above a group of functions...

Re @raysan5 Understandable. Tho what is the purpose of this no GPU mode then? Every modern PC/Mac/Android/iOS platform has support for OpenGL so what would be the motivation for someone to not use it?
It does remove the dependency on OpenGL, but at the same time introduces a dependency on to some other platform specific API to create a window and pull inputs. The only thing i can see this being useful for is getting raylib to run on an old Win 98 machine that does not have proper hardware accelerated graphics support.  Or perhaps raylib for MS-DOS with bitmap VGA graphics?

I've already given one really good reason above! You can leverage
raylibs no GPU functions without the need of initialising a window
very useful for custom tools in your build processes...
On 09/09/2020, Berni8k<EMAIL_ADDRESS>wrote:

Re @raysan5 Understandable. Tho what is the purpose of this no GPU mode
then? Every modern PC/Mac/Android/iOS platform has support for OpenGL so
what would be the motivation for someone to not use it?
It does remove the dependency on OpenGL, but at the same time introduces a
dependency on to some other platform specific API to create a window and
pull inputs. The only thing i can see this being useful for is getting
raylib to run on an old Win 98 machine that does not have proper hardware
accelerated graphics support.  Or perhaps raylib for MS-DOS with bitmap VGA
graphics?
--
You are receiving this because you commented.
Reply to this email directly or view it on GitHub:
https://github.com/raysan5/raylib/issues/1370#issuecomment-689628252

--
blog bedroomcoders.co.uk http://bedroomcoders.co.uk
Disclaimer:
By sending an email to ANY of my addresses you are agreeing that:

I am by definition, "the intended recipient"

All information in the email is mine to do with as I see fit and
make such financial profit, political mileage, or good joke as it
lends itself to. In particular, I may quote it where I please.

I may take the contents as representing the views of your company.

This overrides any disclaimer or statement of confidentiality
that may be included on your message.

#796

Would TinyGL be an option around this? It would keep the same GL calls, but render through the software-implementation subset of OpenGL. I haven't tested using GLFW with TinyGL, however. With SDL, you can use SDL_SWSURFACE or SDL_CreateSoftwareRenderer(), glfw doesn't give you a similar option unfortunately.

I'm closing this feature for the moment, supporting a software-renderer does not seem feasible for the moment. Users requiring it, can use the Image*() API and manage the swap-buffers manually to the intended display.


fix rcd blacklist

About the PR

You can now rcd cables under doors and structures, just like placing with hands.
You can now rcd grilles and windows under shutters and doors, just like standard construction.
You can now rcd cable terminal on floor just like standard construction (terminals themselves are even above floor, unlike cables)
fix https://github.com/space-wizards/space-station-14/issues/30878
fix https://github.com/space-wizards/space-station-14/issues/30255
fix https://github.com/space-wizards/space-station-14/issues/28449
fix https://github.com/space-wizards/space-station-14/issues/27167
Media

https://github.com/user-attachments/assets/ede0ac65-a682-41fe-ad88-cebc3270766b
Requirements

[X] I have read and am following the Pull Request and Changelog Guidelines.
[X] I have added media to this PR or it does not require an ingame showcase.

Breaking changes

Changelog

:cl:

fix: The RCD can now place grilles and windows under shutters and cables under doors.

Blessed PR

Will this make it possible to rcd place airlocks ontop of firelocks?

Will this make it possible to rcd place airlocks ontop of firelocks?

In the current implementation, no. Airlocks and firelocks use the same collision group so rcd can't stack them.


Casting To INT64 Line causing test failure

We have a data product that brings in an external package - DBT FiveTran Jira  but the line in the model below fails in our run instance because it is trying to cast a string value into an integer. I began to explore and it turns out our piece of data that offends the line is a URL link that can have a string value.
https://github.com/fivetran/dbt_jira/blob/688a1ab627d17784a0efa7cc0eb1fac861cec99b/models/intermediate/int_jira__issue_epic.sql#L15
Is there a way to disable this test? or modify the line to accept string values?

Thanks, Kishen

Hi @KishGoh99 thank you for submitting this issue. I am looking into this issue and have a question first. In your source data warehouse, do you have a jira table called epic? This is an optional table, and I'm wondering if it changes something our package does not anticipate.
In the meantime, there are a couple ways to turn off the test. You mentioned using a data product, so I'm not sure which would work best for you. Are you running dbt via CLI, cloud, or another way?

Hi @KishGoh99 just checking in if you were able to look into this?

@KishGoh99 - We are facing this error now as well. It started in the last couple weeks I think. Did you figure out any workaround? or @fivetran-catfritz  did you find out anything?


[BUG] Moving tasks on board not working as it used to work (KB 1.0.19)

Noticed this behaviour - first in 1.0.18

In 1.0.19 it's become even worse.
Instead of writing alot - I'll describe it with a .gif below.
The tasks won't "catch" in the receiving column at first
If close to the title of the column, and after "warming up" - it works.
Really strange

System:

Linux ws02k41 3.16.0-0.bpo.4-amd64 # 1 SMP Debian 3.16.7-ckt11-1+deb8u3~bpo70+1 (2015-08-08) x86_64

Running: Apache/2.2.22
Browser Firefox 41.0.2

The lastest version that is quick for "proper use" on our big server  - is 1.0.16 - that is before (gut feeling) "Move board collapse/expand mode to server side to avoid board flickering" - introduced in 1.0.17 - is the server more loaded from 1.0.17 and onwards - could that be a reason?

If you disable the "max column height / vertical column scrolling" as it's seems to be the case in your screencap, the drop zone for the task is the top of the column, the placeholder is the same height as the task. I know that it's something to improve...
Can you validate that if you enable the "max. column height" it works correctly?

Confirmed.

With "Set maximum column height" active = not an issue, work fine moving tasks between columns
With "Remove maximum column height" active = issue is present, have to move task close to column title to make it "catch"

This issue is now fixed in the dev branch.


[storage/local] fix timer.Reset usage

According to https://golang.org/pkg/time/#Timer.Reset you must not rely on a returned value from Reset.

:+1: Thanks for the catch. And just in time for the 1.8 release. :o)


Added User update ability

Needed a way to get a user's presence.

Thanks for the PR, I only updated the name of the test method (see 0510d55b9fd81f4cf421b35eede027db5f49ad93)


fix(cli): fix stack overflow in Deno doc when namespace exports itself

This PR fixes: https://github.com/denoland/deno/issues/23711
When executing deno doc on a TypeScript file that contains a namespace exporting itself, like in this file example:
https://gist.github.com/crowlKats/1f6ed084bbab0a10267df9ed31564599
export namespace test {
    export { test };
}

The program exits with the following error:
thread 'main' has overflowed its stack
error: process didn't exit successfully: target\debug\examples\ddoc.exe test3.d.ts (exit code: 0xc00000fd, STATUS_STACK_OVERFLOW)
Solution:
I added a check to see if the export is the same as the namespace and, if so, it ignores generating the DocNode for it.

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

Thanks for the PR, but see the comments. Also, would you be able to sign the CLA?

I signed the CLA document


Update demo pages to use can-component constructors

Part of https://github.com/donejs/donejs/issues/1146

Coverage increased (+0.007%) to 97.548% when pulling 06c462e049f436e8fb73846b5a0783c16afc5cb4 on demo into b779f577a19f0a5b116907c58b4e24300130f5d8 on master.


Keras should support bitwise ops

Numpy has bitwise ops https://numpy.org/doc/stable/reference/routines.bitwise.html
TensorFlow has bitwise ops https://www.tensorflow.org/api_docs/python/tf/bitwise
Jax has bitwise ops https://jax.readthedocs.io/en/latest/_autosummary/jax.numpy.bitwise_and.html
PyTorch has bitwise ops https://pytorch.org/docs/stable/generated/torch.bitwise_and.html
So it seems natural for Keras to support bitwise ops as well.

What a coincidence! They were added last week in this PR https://github.com/keras-team/keras/pull/20126
You can try them by installing the nightly version.
pip install keras-nightly

Since these were added in https://github.com/keras-team/keras/pull/20126, closing this issue for now.


Flutter Doctor: Android Studio 4.1 is not detected

No workaround from #67986 works. How can I fix this?
Steps to Reproduce
Run flutter doctor..
Additional infos:
which flutter
/snap/bin/flutter

which android-studio
/snap/bin/android-studio

ls -la /snap/bin/android-studio
lrwxrwxrwx 1 root root 13 Nov  4 15:37 /snap/bin/android-studio -> /usr/bin/snap

ls -la /snap/android-studio/
94/      96/      current/

ls -la /snap/android-studio/current/android-studio/
bin/                   Install-Linux-tar.txt  lib/                   LICENSE.txt            plugins/
build.txt              jre/                   license/               NOTICE.txt             product-info.json

flutter doctor -v
flutter doctor -v
[✓] Flutter (Channel dev, 1.24.0-7.0.pre, on Linux, locale de_DE.UTF-8)
    • Flutter version 1.24.0-7.0.pre at /home/pullrich/snap/flutter/common/flutter
    • Framework revision a0860f6e87 (vor 6 Tagen), 2020-10-29 20:07:34 -0700
    • Engine revision 073263e39d
    • Dart version 2.11.0 (build 2.11.0-260.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /home/pullrich/Android/Sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_SDK_ROOT = /home/pullrich/Android/Sdk
    • Java binary at: /home/pullrich/.jdks/jdk1.8.0_261/bin/java
    • Java version Java(TM) SE Runtime Environment (build 1.8.0_261-b12)
    • All Android licenses accepted.

[✓] Linux toolchain - develop for Linux desktop
    • clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final)
    • cmake version 3.10.2
    • ninja version 1.8.2
    • pkg-config version 0.29.1

[!] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/docs/get-started/install/linux#android-setup for detailed instructions).

[✓] IntelliJ IDEA Ultimate Edition (version 2020.2)
    • IntelliJ at /snap/intellij-idea-ultimate/253
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] Connected device (1 available)
    • Linux (desktop) • linux • linux-x64 • Linux

! Doctor found issues in 1 category.

After switching the channel to beta and back to dev and settting the and android studio dir again, the issue is gone.
flutter config --android-studio-dir=/snap/android-studio/current/android-studio/


1.9 only?

The README indicates only 1.9 testing.  Is that still true?

No. I created this library when Ruby 1.8.7 was still widely deployed. I will update README to reflect "> 1.9"


Support for ipynb files

Will vscode-pylint support jupyter notebook? If not, it should be disabled in jupyter notebook.
Here are some discussions:
Verifying PEP8 in iPython notebook code
Using Pylint in Ipython (Jupyter-Notebook)

@WXZhao7 We do have plans to support this. But until then I agree that it should be disabled.

per
https://newbedev.com/using-pylint-in-ipython-jupyter-notebook

Some rules that you might want to disable:
pointless-statement
expression-not-assigned
trailing-newlines
wrong-import-position
redefined-outer-name
invalid-name
It also appears that the maximum number of characters in a cell (before horizontal scrolling) is 116 but that might depend on other factors.

if needed, I would go as far as having a second pylintrc in the notebooks folder.

Bump, any plans to support this?


Chore: Ergo 0.8

Coverage remained the same at 99.114% when pulling 2619fa70a16a9256d38b6db5f28168a3272b0b8d on jeromesimeon:js-ergo-0.8 into 8dc12609560e8d22626a54433f9eb5b1ebea6dbb on accordproject:master.


Splitting up the Walkthrough for 1.6 and 1.7 instructions

As discussed, we will provide installation and walkthrough documents for both 1.6 (and prior) and 1.7 (and later) clusters. However, we will deprecate the 1.6 documents. I've done that here.
I've also split the walkthrough documents apart. For each Kubernetes version, I've provided an installation document and a walkthrough document.
Finally, I've moved the docs/api-aggregation-setup.md file into the installation guide for 1.7, and re-structured it to match the structure of the installation guide for 1.6.
This patch replaces #1005 (which is now closed). I'd like to complete the 1.7 instructions (which are currently a TODO in this patch) in a follow-up.
cc/ @jboyd01, who is also interested in working on 1.7 install/walkthrough instructions.

Thanks @jboyd01. Cool with addressing your changes in an immediate follow-up?

@MHBauer I've addressed your comments. Can you PTAL?

I see that this already has LGTM2, and I won't block it merging, but I would like to have my comments addressed ASAP in a follow-up.


edit ssl.http.enabled docs

Codecov Report

Merging #6214 into master will increase coverage by 0.01%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #6214      +/-   ##
============================================
+ Coverage     83.27%   83.29%   +0.01%
- Complexity    12526    12528       +2
============================================
  Files          1450     1450
  Lines         47392    47392
  Branches       5814     5814
============================================
+ Hits          39467    39476       +9
+ Misses         5232     5225       -7
+ Partials       2693     2691       -2

Impacted Files
Coverage Δ
Complexity Δ

...exceptions/GroupByOnArrayUnsupportedException.java
66.66% <0%> (-33.34%)
1% <0%> (-1%)

...peration/collect/BatchIteratorCollectorBridge.java
65.78% <0%> (-7.9%)
2% <0%> (ø)

.../java/io/crate/analyze/symbol/ParameterSymbol.java
82.35% <0%> (-5.89%)
6% <0%> (-1%)

...ate/operation/merge/RamAccountingPageIterator.java
94.44% <0%> (-5.56%)
8% <0%> (-1%)

...nce/sys/check/node/DiskWatermarkNodesSysCheck.java
57.69% <0%> (-3.85%)
6% <0%> (-1%)

...otocols/postgres/RetryOnFailureResultReceiver.java
88.46% <0%> (-3.85%)
10% <0%> (-1%)

...or/transport/distributed/DistributingConsumer.java
75.96% <0%> (-3.85%)
21% <0%> (ø)

.../operation/udf/DropUserDefinedFunctionRequest.java
91.42% <0%> (-2.86%)
10% <0%> (-1%)

...transport/executionphases/ExecutionPhasesTask.java
91.74% <0%> (-2.76%)
24% <0%> (ø)

...te/blob/pending_transfer/PutHeadChunkRunnable.java
76.71% <0%> (-2.74%)
12% <0%> (-1%)

... and 20 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 48c642c...210c342. Read the comment docs.


[FLINK-27289]Do some optimizations for "FlinkService#stopSessionCluster"

In the "FlinkService#stopSessionCluster" method, if 'deleteHaData=true', the 'FlinkUtils#waitForClusterShutdown' method will be called twice.
So we should only execute 'FlinkUtils#waitForClusterShutdown' again with 'deleteHaData=false',This will reduce two visits to the kubernetes cluster

@spoon-lz Could you please rebase the latest main branch and resolve the conflicts.

@wangyang0918  Rebase is complete


possible error/bug at .wiki command

Description

There might be a bug/error when reacting to .wiki commands trashcan, I was able to remove the message by clicking trashcan even when I was not the one running the command.
Steps to Reproduce

If this is not how it should act there might be a error in check. Maybe adding a check to function to .wiki command (if this is not how it should act). It would be nice to be limited, so it would not be clicked to annoy others or be pressed mistakenly to remove the message.
Expected Behaviour

I would expect the bot to remove the message only if command author presses the trashcan reaction.
Actual Behaviour

Instead anyone seems to be able to remove the message when trashcan is pressed.
Known Impacted Platforms

[ ] Web
[x] Desktop
[ ] Android App
[ ] iOS App

Possible Solutions

Checking if there is a check function to see who click the trashcan and see if they are the one who ran the command. So adding the check in there.
Would you like to implement a fix?
Note: For high-priority or critical bugs, fixes may be implemented by staff.

[ ] I'd like to implement the bug fix
[x] Anyone can implement the bug fix

Thanks for the report. The paginator takes a restrict_to_user argument:
https://github.com/python-discord/sir-lancebot/blob/ba4b0e498191195d773c031fcfdaef862bd472b8/bot/utils/pagination.py#L91-L95
which can be used for this exact purpose. I think we should use it here.

I see, that would be really nice to have on commands that have the trashcan reaction, especially the ones with more than a bit of content eg. .wiki command.


moosefs: 3.0.117 -> 3.0.118

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/moosefs/moosefs/releases.
meta.description for moosefs is: Open Source, Petabyte, Fault-Tolerant, Highly Performing, Scalable Network Distributed File System
meta.homepage for moosefs is: https://moosefs.com
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 3.0.118 with grep in /nix/store/h5l5y8vinbbmljsn506w5k8r7qp7prnw-moosefs-3.0.118
found 3.0.118 in filename of file in /nix/store/h5l5y8vinbbmljsn506w5k8r7qp7prnw-moosefs-3.0.118

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

moosefs

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/h5l5y8vinbbmljsn506w5k8r7qp7prnw-moosefs-3.0.118 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A moosefs https://github.com/r-ryantm/nixpkgs/archive/bf907e87eb2e077990215b3c94a9a5717405f5c5.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/bf907e87eb2e077990215b3c94a9a5717405f5c5#moosefs

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/h5l5y8vinbbmljsn506w5k8r7qp7prnw-moosefs-3.0.118
ls -la /nix/store/h5l5y8vinbbmljsn506w5k8r7qp7prnw-moosefs-3.0.118/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

moosefs

Maintainer pings
cc @mfossen for testing.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 334279 run on x86_64-darwin 1

1 package built:

moosefs


docs: readme update test

#1  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @Dax911 and the rest of your teammates on  Graphite

Merge activity

Sep 16, 1:52 PM EDT: @Dax911 merged this pull request with Graphite.


color for custom onnx operators

Hi,
Thanks for your Netron! It's very useful!
Now I am converting my dataset into ONNX format and then using Netron to do visualization.
Can we assign a color to the custom operator? Or could you give me some guidance about how to modify it?

The colors are determined by the category of the type of a node. The actual colors are defined via .node-item-type-<category> in grapher.css. Categories for known operators are encoded in onnx-metadata.json. #742 for more  discussion how custom colors could be implemented.


increase code hint window size

Hi!
I couldn't find any configuration to make the code hint window bigger.

Is that possible? Please help!
Thanks!

Yes, the method call tip should also have a max width increased, we use really long names for some stuff at work and both are sometimes annoying.


Navigating using navigation keys is not working as expected.

Please help,
I recently updated my jspreadsheet to 4.7.3 .
Navigation using navigation keys is moving 2 cells forward , and every right click is taking two clicks.
example :
Issue 1:  if cell pointer is in A1 cell and then click on right arrow then cell pointer is moving to A3 instead of A2.
Issue 2:  if i right click on column header then it is taking it as two clicks and selecting options by itself and performing action.
please help on above issues,
Thank you.

Hi,
Maybe see if you not load 2 times libraries. Because navigation by keys is global, and i try on demo website, and is OK, then i think you a issue on load or create new instance.

Hey, to your above response , is there any way to remove the previous instance?

Check if jexcel.build == null in console after loading instance of JSpreadsheet. If yes do you use property "root" ?
Can you reproduct a problem on codepen or jsfiddle ?
How much of spreadsheet in your page ?

Yes, we use property of root and  jexcel.build == null.
can't we initialise this?

build is initialised and after call is set to null.
But i think why. You have 2 instance of jss on same root ? like 2 tabs ? try to not set root property in this case or just set to first instance


feat(worker): Google Analytics 4 experiment

Can you move the ga4 stuff into deno.land/x/ga4 so we can share it between multiple projects?
How will this effect the current "deno for bots" GA account?

Can you move the ga4 stuff into deno.land/x/ga4 so we can share it between multiple projects?

I will eventually - but there are still a number of kinks to iron out and I also this abstraction isn't right yet.
You can see the status quo here: https://analytics.google.com/analytics/web/#/p311458244/realtime/overview

How will this effect the current "deno for bots" GA account?

For now it reports to both. The current GA account is unaffected.


Moved image attribute from FloatingItem to DocItem

We want the image attribute to be available for TextItem to allow exposing equation images. I have moved image from FloatingItem to DocItem so that it becomes part of TextItem as well.
Related issue: https://github.com/DS4SD/docling/issues/299

@sh-gupta We quickly discussed, we need to do the following points (@cau-git will explain),

add get_image to DocItem (overloaded on PictureItem)

check if there are page-images

enrichment models can leverage the backend
deprecate this: https://github.com/DS4SD/docling/blob/main/docling/datamodel/pipeline_options.py#L84C5-L84C28

Made the required changes:

Moved image from DocItem back to FloatingItem
Added get_image function to DocItem. If returns None if provenance is not found or page image is not available, else it returns an appropriately cropped section of the page image
Overrode get_image in FloatingItem

This looks good now, thanks!

@sh-gupta Could we add some unit-tests for this functionality?

@PeterStaar-IBM : I've added tests for DocItem.get_image and FloatingItem.get_image
@dolfim-ibm : I initially thought raising an error but then decided to stick with None to be consistent with the behavior of FloatingItem.image when image is not found. I can raise an exception if you prefer.
@vagenas : I've made the changes as per your discussion. Can you please take a look?

@sh-gupta in the docstring of the two get_image() methods, I would explicitly add that the method returns None if no image is available / applicable (exact wording up to you, but just to mention that None is returned "otherwise").


Joint HaplotypeCaller JoblibOSError

Failed to complete HaplotypeCaller with 287 targeted capture samples. Error occurs after a PrintReads completes.
Traceback (most recent call last):
  File "/home/bwubb/bcbio-tools/bin/bcbio_nextgen.py", line 226, in <module>
    main(**kwargs)
  File "/home/bwubb/bcbio-tools/bin/bcbio_nextgen.py", line 43, in main
    run_main(**kwargs)
  File "/home/bwubb/bcbio-nextgen/anaconda/lib/python2.7/site-packages/bcbio/pipeline/main.py", line 37, in run_main
    _setup_resources()
  File "/home/bwubb/bcbio-nextgen/anaconda/lib/python2.7/site-packages/bcbio/pipeline/main.py", line 80, in _run_toplevel
    tempfile.tempdir = tmpdir
  File "/home/bwubb/bcbio-nextgen/anaconda/lib/python2.7/site-packages/bcbio/pipeline/main.py", line 160, in run
    out = tz.update_in(out, [nkey], lambda x: nval)
  File "/home/bwubb/bcbio-nextgen/anaconda/lib/python2.7/site-packages/bcbio/pipeline/region.py", line 127, in parallel_prep_region
    "piped_bamprep", _add_combine_info, file_key, ["config"])
  File "/home/bwubb/bcbio-nextgen/anaconda/lib/python2.7/site-packages/bcbio/distributed/split.py", line 59, in parallel_split_combine
    split_output = parallel_fn(parallel_name, split_args)
  File "/home/bwubb/bcbio-nextgen/anaconda/lib/python2.7/site-packages/bcbio/distributed/multi.py", line 28, in run_parallel
    return run_multicore(fn, items, config, parallel=parallel)
  File "/home/bwubb/bcbio-nextgen/anaconda/lib/python2.7/site-packages/bcbio/distributed/multi.py", line 86, in run_multicore
    for data in joblib.Parallel(parallel["num_jobs"])(joblib.delayed(fn)(x) for x in items):
  File "/home/bwubb/bcbio-nextgen/anaconda/lib/python2.7/site-packages/joblib/parallel.py", line 664, in __call__
    self.retrieve()
  File "/home/bwubb/bcbio-nextgen/anaconda/lib/python2.7/site-packages/joblib/parallel.py", line 547, in retrieve
    raise exception_type(report)
joblib.my_exceptions.JoblibOSError: JoblibOSError

After this, it starts spitting chunks of python code. For brevity's sake I did not include it, but I can certainly provide them if it would aid troubleshooting.
Last line of the error file is:
OSError: [Errno 12] Cannot allocate memory
I checked the out file created with the exit status and job stats. For once I can claim that too little memory was not an issue (as far as I could tell).
Normally, I might try to run in single mode, but given the number of samples and how slow HaplotypeCaller is generally, I would prefer not to have to do that. In fact using 16 cores was far too slow; if I were to redo it I would use many more. Im aplogize if my errors and descriptions are not very informative. Thanks for your continued assistance and enduring patience!

I guess showing us the last two or three segments of the Python stack trace would help narrowing down the search since right now it is not entirely clear where it failed.

For once I can claim that too little memory was not an issue (as far as I could tell).

May I ask why that is? Usually the OS is right about such error codes and processing many samples in parallel can generate quite some memory load.

May I ask why that is? Usually the OS is right about such error codes and processing many samples in parallel can generate quite some memory load.

Yeah I am probably very wrong. I thought I could make that claim because when I hit a memory ceiling I am told so by the LSF scheduler, where as this time it just reported Exit code1. The chunks of python in the error message threw me off as well. Upon digging into the job history it seems very likely this was a memory resource issue. I am rerunning with a 3x more RAM. If it works I will owe some apologies for time wasting.


Attempt.getAttemptNumber can return int instead of long

It makes little sense to have the Retryer retry more than Integer.MAX_VALUE times, and, in fact, the Retryer uses an int variable to iterate. Therefore, the attempt number can be an int.

Merged to master


Allow extensions to include/not-include YourContract.sol and it deployment

Description:
Can we achieve it without adding the conditions in cli logic itself? Previously we had "templates" (kind of similar to extensions) can we use that to achieve it? Maybe base hardhat won't have YourContract.sol and its deployment. And that extra template will have  YourContract.sol

Completed at #148


find_package(EnTT) fails

I installed entt 2.7.3-1 just fine. However, when I try to call find_package(EnTT) in my cmake file and run the cmake command I get:

Perhaps CMakePackageConfigHelpers is not being imported as it should? I am running Windows 10.0.17134 (though I doubt that provides any useful information in this case).
Edit:
The problematic file seems to have been generated using configure_package_config_file. The CMake reference says that "by default configure_package_config_file [...] generates two helper macros, set_and_check() and check_required_components() into the FooConfig.cmake file." For some reason the definition of set_and_check appears in the output file but not check_required_components, which would appear to be the source of the error.

I think I found the source of the error and it's in the entt repository itself. I submitted a pull request so I'm closing this issue.


table with horizontal borders only

Is it possible to style table to have only horizontal borders between rows? Make them dashed?

Such as this one?

Yes. You'd define it as follows:
[cols="1s,1,1,1,1",frame=none,grid=rows,stripe=all]
|===
|Field Name |Description |Format |Archive |Lineage

|ID
|Numeric unique ID of the report
|Number
|
|

|Name
|Name of the report (short)
|Text
|
|
|===

It's not currently possible to change the border style. However, we could add support for that in the theme. I'll open an issue.

See #766.

I was searching theme guide how to do it :)
With your I get almost what I need, I hope 766 will solve it.
BTW, I can't remove header grid.

    table:
   background_color: $page_background_color
   head_background_color: 002060
   head_font_color: ffffff
   head_font_style: bold
   even_row_background_color: f2f2f2
   odd_row_background_color: f2f2f2
   foot_background_color: f0f0f0
   border_color: $base_border_color
   border_width: 0
   grid_width: 0.1
   grid_color: e2e2e2
   # HACK accounting for line-height
   cell_padding: [3, 3, 6, 3]

What you've circled aren't actually borders.  I verified that Asciidoctor PDF is not adding borders on these cells. Instead, they are some sort of artifact that evince adds. If you open in Adobe Reader I think you'll find that they aren't there.
Likely this is some sort of rounding error in Prawn that is introducing a hairline gap, causing the background to be visible. I think this needs to be filed with Prawn.

The way you can check that it isn't Asciidoctor PDF adding a border between header cells is by setting the grid width to a large value like 5. You can then see that the results are the same, so these two things are not linked.

I'm going to close this issue since #766 covers the actual feature request. After testing against master, please comment there.

Well, indeed it is not asciidoctor-pdf/prawn fault -- there are no gaps in Acrobat Reader. Gaps are rendered in firefox PDF.js or whatever it is called.
Thx.

I think the fact that there are gaps in some viewers indicates there's some sort of problem. We just need to figure out where the gaps get created. It's either a rounding error in Prawn / Prawn Table or it's a bug in the viewers (though I see the same thing in Evince). Tables are actually just adjacent boxes (since PDF doesn't have a table to my knowledge). That's why it seems to me like a rounding error.

I think Adobe Reader is just being more intelligent about merging near-adjacent objects.


-flto does not work with LDC

The cmdline option -flto=thin (or -flto=full) does not work with LDC.
https://godbolt.org/g/YokGlg
LDC searches for the required LLVMgold.so plugin in the path and in LDC's own path.
LLVMgold.so has to match or be newer than the LLVM version used to build LDC, so that can become a problem. When LLVM is built with the correct option to build LLVMgold.so, LDC will copy it to its own installation and rename it to include "ldc" in the name and it will take priority over a potential LLVMgold.so in the system path.
The current image downloads the release package of LDC, and these unfortunately don't include LLVMgold.so (because of potential system incompatibilities...).
Don't know what would be a good solution here, other than building LLVM+LDC from scratch...

Building ldc is quite possible: if it's not too much more difficult than clang/llvm. There's already support for building clang from source in the https://github.com/mattgodbolt/compiler-explorer-image/blob/master/clang/build/build.sh file: maybe that's close to what's needed already?

Building LDC is easy. I'll have a closer look at the clang build script and try to come up with one for LDC. I see the clang script already contains stuff to build the LTO plugin :-)

Will do! I'll take a look tonight: thanks!

I had a quick look but for some reason the script exits with code 8 during install in my build:
-- Installing: /root/staging/bin/llvm-diff
-- Installing: /root/staging/bin/llvm-link
-- Installing: /root/staging/bin/llvm-rtdyld
-- Installing: /root/staging/bin/llvm-strings
-- Installing: /root/staging/lib/cmake/llvm/LLVMExports.cmake
-- Installing: /root/staging/lib/cmake/llvm/LLVMExports-release.cmake
-- Installing: /root/staging/lib/cmake/llvm/LLVMConfig.cmake
-- Installing: /root/staging/lib/cmake/llvm/LLVMConfigVersion.cmake
-- Installing: /root/staging/lib/cmake/llvm/LLVM-Config.cmake
-- Up-to-date: /root/staging/lib/cmake/llvm/.
-- Installing: /root/staging/lib/cmake/llvm/./LLVMInstallSymlink.cmake
-- Installing: /root/staging/lib/cmake/llvm/./FindSphinx.cmake
-- Installing: /root/staging/lib/cmake/llvm/./CheckCompilerVersion.cmake
-- Installing: /root/staging/lib/cmake/llvm/./GenerateVersionFromCVS.cmake
-- Installing: /root/staging/lib/cmake/llvm/./GetSVN.cmake
-- Installing: /root/staging/lib/cmake/llvm/./LLVMProcessSources.cmake
-- Installing: /root/staging/lib/cmake/llvm/./HandleLLVMOptions.cmake
-- Installing: /root/staging/lib/cmake/llvm/./HandleLLVMStdlib.cmake
-- Installing: /root/staging/lib/cmake/llvm/./CheckAtomic.cmake
-- Installing: /root/staging/lib/cmake/llvm/./AddOCaml.cmake
-- Installing: /root/staging/lib/cmake/llvm/./VersionFromVCS.cmake
-- Installing: /root/staging/lib/cmake/llvm/./CheckLinkerFlag.cmake
-- Installing: /root/staging/lib/cmake/llvm/./AddLLVM.cmake
-- Installing: /root/staging/lib/cmake/llvm/./FindOCaml.cmake
-- Installing: /root/staging/lib/cmake/llvm/./LLVMExternalProjectUtils.cmake
-- Installing: /root/staging/lib/cmake/llvm/./AddSphinxTarget.cmake
-- Installing: /root/staging/lib/cmake/llvm/./TableGen.cmake
-- Installing: /root/staging/lib/cmake/llvm/./DetermineGCCCompatible.cmake
-- Installing: /root/staging/lib/cmake/llvm/./ChooseMSVCCRT.cmake
-- Installing: /root/staging/lib/cmake/llvm/./CrossCompile.cmake
-- Installing: /root/staging/lib/cmake/llvm/./AddLLVMDefinitions.cmake
root@27e8331415b7:~# echo $?
8

There's no obvious other error in the scroll buffer. I'll have to keep digging on my side.

(the llvm build was successful, this appears to be in the make install step)

Hmm, strange.  8?

Yes! I was perplexed too!
On Wed, Jun 7, 2017 at 3:31 PM Johan Engelen<EMAIL_ADDRESS>wrote:

Hmm, strange. 8?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mattgodbolt/compiler-explorer/issues/438#issuecomment-306915804,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAmsdRXnebrfbcLQlAUfUiyRefCW6oi5ks5sBwirgaJpZM4NkZs1
.

How can I help move this forward? :S

I'm sorry I have been busy; I meant to get back to you. The way I'm repro-ing it at the moment is through:
$ docker run -t mattgodbolt/clang-builder

then in the docker container:
# bash ./build-ldc.sh 1.2.0 s3://compiler-explorer/opt/

and watch it fail stop. You should be left with the root prompt in the docker container still running happily with the "broken" installation. I'm not quite sure what to do! Good luck, I'll try and take a look too!

(btw, i remember reading something about error code 8 caused by cannot write to disk or smth.. but can't find it)

Interesting: in errno 8 is Exec format error which is similarly perplexing. I have plenty of disc space...

Argh, a typo...
https://github.com/mattgodbolt/compiler-explorer-image/pull/27

Btw, the current script is not smart when it is called multiple times for different LDC versions. (repeatedly downloads gcc-6.3.0, builds LLVM, and downloads bootstrapping D compiler...)

(having a script like this would also enable building LDC master..... =) =) =))

Merged and retrying. With regards to being smart, I prefer it this way: it's easier to get reproducible builds. I'm not against an external http cache or something, but it's nice for the script to stand by itself.
Re: master builds, yes, this is exactly how I have GCC and clang master builds :)

It'd be good if the LLVM version could be specified as script argument. E.g.:
./build-ldc.sh 1.1.0 3.9.0 s3://compiler-explorer/opt/  to build LDC 1.1.0 with LLVM 3.9.0.
How to proceed from here? Change this script somehow https://github.com/mattgodbolt/compiler-explorer-image/blob/master/update_compilers/install_compilers.sh ?

The retry failed; I was busy so didn't have a chance to investigate but I suspect a typo.
Re: other versions of LLVM; will happily support that if there's a need for it.
The install_compilers.sh will need a change to load the built compiler once it's actually working. I'll take another look as to why it failed shortly.

I am a total docker beginner, but if I run docker pull mattgodbolt/clang-builder and then docker run -it mattgodbolt/clang-builder again, the typo $ is still there in build-ldc.sh.

I haven't pushed the fix yet; sorry. Have pushed it now and fixed some
other bits and am re-running :)
On Thu, Jun 15, 2017 at 2:04 PM Johan Engelen<EMAIL_ADDRESS>wrote:

I am a total docker beginner, but if I run docker pull
mattgodbolt/clang-builder and then docker run -it
mattgodbolt/clang-builder again, the typo $ is still there in
build-ldc.sh.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/mattgodbolt/compiler-explorer/issues/438#issuecomment-308837465,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAmsdb0rv8LnoHWESoVMqv1_mOWmQ9zUks5sEYAggaJpZM4NkZs1
.

All fixes pushed and it gets a lot further:
-- Found host D compiler /root/ldc110/bin/ldmd2, with default flags ''
-- Found LLVM: /root/staging (found suitable version "4.0.0", minimum required is "3.5")
CMake Error at /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find LibConfig (missing: LIBCONFIG_INCLUDE_DIR LIBCONFIG_LIBRARY)

Any ideas?

Ah yes... :(  libconfig is needed for LDC < 1.3.  The ubuntu package is called libconfig++8-dev.

Cool: I'll add it to the docker image and retry later. Sorry this is taking
so long!
On Sat, Jun 17, 2017 at 6:42 AM, Johan Engelen<EMAIL_ADDRESS>wrote:

Ah yes... :( libconfig is needed for LDC < 1.3. The ubuntu package is
called libconfig++8-dev.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/mattgodbolt/compiler-explorer/issues/438#issuecomment-309210131,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAmsdarVD3s-nuYv38W09W6QF5QZlHU5ks5sE7uYgaJpZM4NkZs1
.

Ok....I have a built version at last :) yay!
I'm now having troubles with the runtime requirement for libconfig.so.9 :
/opt/compiler-explorer/ldc2-1.2.0/bin/ldc2
/opt/compiler-explorer/ldc2-1.2.0/bin/ldc2: error while loading shared libraries: libconfig.so.9: cannot open shared object file: No such file or directory

I can reimage all the CE instances to also include libconfig but before I do this (it's a bit of a pain), why might the regular ldc1.2.0 work just fine, but this home-built version not?
/opt/compiler-explorer/ldc1.2.0/ldc2-1.2.0-linux-x86_64/bin/ldc2 | head -4
OVERVIEW: LDC - the LLVM D compiler
USAGE: ldc2 [options] files --run Runs the resulting program, passing the remaining arguments to it

Yay!

why might the regular ldc1.2.0 work just fine

We copy libconfig.so.* to the LDC bin directory when creating the binary packages. So the buildscript here should do the same. We use this fancy piece:
    libfile=$(ldd $PKG_DIR/bin/ldc2 | grep libconfig | cut -d ' ' -f 3)
    if [ -n "$libfile" ]; then
        cp -aL $libfile $PKG_DIR/bin
    fi

Wait, maybe we can simplify things a lot. From LDC 1.3, libconfig is not needed any more.
Why not simply this: only provide CE-specific builds with LTO for LDC 1.3 onwards, and keep the current older versions simply as downloads from github packages.

I'm happy to give that a go :) I am out on vacation for the next week; hopefully time to get this when I get back

Hi @mattgodbolt , I've lost sight of this, what's the status of this? Anything you want from me?

Likewise! I'll have to dig in a bit more!
On Mon, Jul 24, 2017 at 4:45 PM, Johan Engelen<EMAIL_ADDRESS>wrote:

Hi @mattgodbolt https://github.com/mattgodbolt , I've lost sight of
this, what's the status of this? Anything you want from me?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mattgodbolt/compiler-explorer/issues/438#issuecomment-317564371,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAmsdYhh16dGeGE5dmd71RYQLUp_dO9oks5sRRCIgaJpZM4NkZs1
.

Johan: I'm so sorry I haven't looked at this. It's still on my todo list
but other things have been getting in the way recently....so sorry!
On Mon, Jul 24, 2017 at 8:42 PM Matt Godbolt<EMAIL_ADDRESS>wrote:

Likewise! I'll have to dig in a bit more!
On Mon, Jul 24, 2017 at 4:45 PM, Johan Engelen<EMAIL_ADDRESS>wrote:

Hi @mattgodbolt https://github.com/mattgodbolt , I've lost sight of
this, what's the status of this? Anything you want from me?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mattgodbolt/compiler-explorer/issues/438#issuecomment-317564371,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAmsdYhh16dGeGE5dmd71RYQLUp_dO9oks5sRRCIgaJpZM4NkZs1
.

It's not high priority :)

Hi @JohanEngelen - just an apology that I haven't looked in to this still. I know it's low priority...but...no progress at all is pretty bad! Sorry :(

@mattgodbolt -flto working on CE with LDC since version 1.4.0 already :)  (we now ship the required plugin)


Error: Connection lost: The server closed the connection.

i want to sync some data from mysql to sqlserver,and sql server may busy,it will take some time and i pause mysql connection,when time span take about 60s and then resume the mysql connection, an error occur, Error: Connection lost: The server closed the connection.,mysql server close the connection,how can i resolve the problem?
i can't reconnect mysql,because i want to deal the recordset continue;

The problem is that your server is currently configured to close the connection quickly. You can do two things to help solve this:

Don't call .pause() and instead buffer up all the results yourself. This will ensure the results flow from the server instead of keeping the connection idle. The downside is you'll need to fit all the results in memory on your Node.js process.
Adjust the timeout on your MySQL server settings. You'll want to tweak the wait_timeout setting.


{{item.content}} doesn't get the entire content

Let's say in my rss feed, the latest article contains all of this:
Update (02/17/24): hotfix for a campaign music volume issue, an infinite credits exploit, and a other few minor issues. Full list of changes here; please re-download the game using the links below.
Update (02/13/24): hotfix for a post-battle crash if you have made a deal with a pirate station king.
Update (02/12/24): another hotfix with some fine-tuning of the colony crises, and a number of bugfixes.
Update (02/08/24): a hotfix with some fine-tuning of the colony crises difficulty (generally reducing it), an improvement to escort AI, and a number of bugfixes.

The note created would only contain:
Update (02/17/24): hotfix for a campaign music volume issue, an infinite credits exploit, and a other few minor issues. Full list of changes here; please re-download the game using the links below. Update (02/13/24): hotfix for a post-battle crash if you have made a deal with a pirate station king. Update (02/12/24): another hotfix with […]

And doesn't contain the new lines like in the original article

This is my template:
---
feed: "{{item.feed}}"
url: "{{item.link}}"
author: "{{item.author}}"
date: "{{item.pubDate}}"
unread: true
---
{{item.content}}

Here it is: https://morss.it/https://fractalsoftworks.com/feed/

https://morss.it/https://fractalsoftworks.com/feed/

Other example of the problem:

RSS Article(It's long so I'm gonna cut it):

I’ve been doing a bunch of work adjusting skills in the last couple of days. Since it’s so fresh in my mind, and since there were a lot of changes, it seemed like it might be interesting to talk about the reasoning behind each change – nothing huge, just a sentence or two describing the thought process. This is an extremely unplanned/impromptu post, and it (probably?) won’t be a very long one.

What is written in the note:

I’ve been doing a bunch of work adjusting skills in the last couple of days. Since it’s so fresh in my mind, and since there were a lot of changes, it seemed like it might be interesting to talk about the reasoning behind each change – nothing huge, just a sentence or two describing the […]

I don't understand "RSS feed by morss". It is not in the format of an xml document.

@aoout  A style sheet transform is applied to the feed when requested via a web browser. To get the raw XML you could use this this Powershell command:
PS> Invoke-WebRequest -UseBasicParsing -Uri https://morss.it/https://fractalsoftworks.com/feed/ -ContentType 'text/xml' -OutFile f.rss


Localization for back-end

As a user i want to see localized back-end data on every page.
Acceptance criteria:
1. User should see localized news on home page
2. User should see localized tracker header on personal cabinet
3. User should see localized predefined goals on personal cabinet
4. User should see localized advices under every tracker
5. User should see localized facts above every tracker
6. User should see localized habit description on Add new habit popup


Remove version: SaitoGames.Hopmon version 2.0

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

URL: http://www.saitogames.com/_download/hopmon_setup.msi
Status Code: 200
(Automated message - build 896)

Close with reason: Package still available.;


[Delegate] VisitUnpackOperator: not supported by armnn: Tensors have different shapes

Hi.
I'm working with Odroid N2 (ARM CPU & Mali GPU)
I want to use ArmNN for tensorflow lite object detection network.
First, I installed armnn delegate by following the guide.
(build ArmNN first, build tensorflow lite, then build TfLite Delegate)
However, the DelegateUnitTests shows ERROR, and a lot of skips
The ArmNN UnitTest works well!
There is no any information about the error... so I write this question.
odroid@odroid:~/armnn-devenv/armnn/delegate/build$ ./DelegateUnitTests --test-suite=CpuAcc
[doctest] doctest version is "2.4.0"
[doctest] run with "--help" for options
INFO: TfLiteArmnnDelegate: Created TfLite ArmNN delegate.
WARNING: VisitUnpackOperator: not supported by armnn: in validate_arguments src/core/NEON/kernels/NEStridedSliceKernel.cpp:67: Tensors have different shapes
ERROR: VisitUnpackOperator: not supported by any specified backend
WARNING: VisitUnpackOperator: not supported by armnn: in validate_arguments
src/core/NEON/kernels/NEStridedSliceKernel.cpp:67: Tensors have different shapes
ERROR: VisitUnpackOperator: not supported by any specified backend
===============================================================================
[doctest] test cases:    187 |    187 passed |      0 failed |    394 skipped
[doctest] assertions:  15086 |  15086 passed |      0 failed |
[doctest] Status: SUCCESS!
odroid@odroid:~/armnn-devenv/armnn/delegate/build$ ./DelegateUnitTests --test-suite=CpuAcc,GpuAcc
[doctest] doctest version is "2.4.0"
[doctest] run with "--help" for options
INFO: TfLiteArmnnDelegate: Created TfLite ArmNN delegate.
WARNING: operator(): not supported by armnn: in validate_arguments src/core/CL/kernels/CLDepthConvertLayerKernel.cpp:55: ITensor data type QASYMM8 not supported by this kernel
ERROR: operator(): not supported by any specified backend
WARNING: VisitUnpackOperator: not supported by armnn: in validate_arguments src/core/NEON/kernels/NEStridedSliceKernel.cpp:67: Tensors have different shapes
ERROR: VisitUnpackOperator: not supported by any specified backend
WARNING: VisitUnpackOperator: not supported by armnn: in validate_arguments src/core/NEON/kernels/NEStridedSliceKernel.cpp:67: Tensors have different shapes
ERROR: VisitUnpackOperator: not supported by any specified backend
WARNING: VisitUnpackOperator: not supported by armnn: in validate_arguments src/core/CL/kernels/CLStridedSliceKernel.cpp:65: Tensors have different shapes
ERROR: VisitUnpackOperator: not supported by any specified backend
WARNING: VisitUnpackOperator: not supported by armnn: in validate_arguments src/core/CL/kernels/CLStridedSliceKernel.cpp:65: Tensors have different shapes
ERROR: VisitUnpackOperator: not supported by any specified backend
===============================================================================
[doctest] test cases:    372 |    372 passed |      0 failed |    209 skipped
[doctest] assertions:  30102 |  30102 passed |      0 failed |
[doctest] Status: SUCCESS!
Thank you!

Linsha-

Hi @Linsha350
what version of ArmNN are you using?
This should be fixed on the master branch by this review https://review.mlplatform.org/c/ml/armnn/+/5660 but the fix was too late for the 21.05 release
Best regards,
Mike

I use branches/v21.05 !
Thank you!
I will try it

I hope this has worked out for you. I'm going to close this, please comment if you're still having issues.


Add [project_name]

Name:
Description:
Thumbnail URL:
Category:
Project URL:

closing this blank request