Skip to content

Instantly share code, notes, and snippets.

View ncouturier's full-sized avatar

nicolas couturier ncouturier

View GitHub Profile
@ncouturier
ncouturier / ClassToFunctional.md
Created February 17, 2026 23:26
generated react skill for claude code

Class to Functional — React Migration

Scope: Migrating class components to function components with hooks. All mappings sourced from CockroachDB's production codebase migration skill. Does NOT cover general hook patterns (SKILL.md) or performance optimization (Performance.md).

Core Mappings

  • this.state = { ... } → individual useState hooks — one hook per logical piece of state, not one object. [source: cockroachdb/cockroach]
  • componentDidMountuseEffect(fn, []) — empty deps array runs once after first render. [source: cockroachdb/cockroach]
  • componentDidUpdate(prevProps, prevState)useEffect(fn, [deps]) — list the specific values that should trigger the effect. [source: cockroachdb/cockroach]
  • componentWillUnmount → cleanup return from useEffect — return a function; React calls it on unmount. [source: cockroachdb/cockroach]
@ncouturier
ncouturier / install.sh
Created October 3, 2020 14:59
install script on mac
#! /bin/bash
#brew install
#/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
#brew doctor
brew install git
#oh my zsh
<Dimension name="Product Plans" >
<Hierarchy name="Products plans by product" hasAll="true" foreignKey="product_plan_id" primaryKeyTable="product_plans" >
<Join leftKey="product_id" rightKey="id" leftAlias="" rightAlias="products_from_plans" >
<Table name="product_plans" />
<Table name="products" />
</Join>
<Level name="Product Plan" description="" table="" column="surrogate_key" nameColumn="" ordinalColumn="" nullParentValue="" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never" parentColumn="">
<Property name="Balance Type" column="balance_type"/>
<Property name="Product Type" column="product_type"/>
</Level>
@ncouturier
ncouturier / gist:9953747
Created April 3, 2014 12:53
xml schema extract & model description
<Dimension name="Product Plans" description="" foreignKey="product_plan_id">
<Hierarchy name="Products plans by product" description="" hasAll="true" allMemberName="" allLevelName="" primaryKey="id" primaryKeyTable="product_plans" uniqueKeyLevelName="" defaultMember="">
<Join leftKey="product_id" rightKey="id" leftAlias="" rightAlias="" >
<Table name="product_plans" schema="" alias="" />
<Table name="products" schema="" alias="" />
</Join>
</Hierarchy>
</Dimension>
Fact table
@ncouturier
ncouturier / gist:9910487
Created April 1, 2014 08:57
mondrian's log
2014-04-01 09:21:55,900 INFO [mondrian.olap.MondrianProperties] Mondrian: properties loaded from 'file:/var/lib/tomcat7/webapps/saiku-backend_trm/WEB-INF/classes/mondrian.properties'
2014-04-01 09:21:55,900 INFO [mondrian.olap.MondrianProperties] Mondrian: loaded 0 system properties
2014-04-01 09:21:55,960 DEBUG [mondrian.rolap.agg.SegmentCacheWorker] Segment cache initialized: mondrian.rolap.cache.MemorySegmentCache
2014-04-01 09:21:55,976 INFO [mondrian.rolap.RolapUtil] Mondrian: JDBC driver com.mysql.jdbc.Driver loaded successfully
2014-04-01 09:21:55,976 INFO [mondrian.rolap.RolapUtil] Mondrian: JDBC driver sun.jdbc.odbc.JdbcOdbcDriver loaded successfully
2014-04-01 09:21:55,976 INFO [mondrian.rolap.RolapUtil] Mondrian: JDBC driver org.hsqldb.jdbcDriver loaded successfully
2014-04-01 09:21:55,976 WARN [mondrian.rolap.RolapUtil] Mondrian: Warning: JDBC driver oracle.jdbc.OracleDriver not found
2014-04-01 09:21:55,988 DEBUG [mondrian.server.monitor] ConnectionStartEvent(0)
2014-04-01 09:21:55,989 DEBU
@ncouturier
ncouturier / gist:9896002
Created March 31, 2014 16:17
mondrian log
2014-03-31 18:09:21,302 INFO [mondrian.olap.MondrianProperties] Mondrian: properties loaded from 'file:/var/lib/tomcat7/webapps/saiku-backend_trm/WEB-INF/classes/mondrian.properties'
2014-03-31 18:09:21,303 INFO [mondrian.olap.MondrianProperties] Mondrian: loaded 0 system properties
2014-03-31 18:09:21,363 DEBUG [mondrian.rolap.agg.SegmentCacheWorker] Segment cache initialized: mondrian.rolap.cache.MemorySegmentCache
2014-03-31 18:09:21,378 INFO [mondrian.rolap.RolapUtil] Mondrian: JDBC driver com.mysql.jdbc.Driver loaded successfully
2014-03-31 18:09:21,378 INFO [mondrian.rolap.RolapUtil] Mondrian: JDBC driver sun.jdbc.odbc.JdbcOdbcDriver loaded successfully
2014-03-31 18:09:21,378 INFO [mondrian.rolap.RolapUtil] Mondrian: JDBC driver org.hsqldb.jdbcDriver loaded successfully
2014-03-31 18:09:21,378 WARN [mondrian.rolap.RolapUtil] Mondrian: Warning: JDBC driver oracle.jdbc.OracleDriver not found
2014-03-31 18:09:21,390 DEBUG [mondrian.server.monitor] ConnectionStartEvent(0)
2014-03-31 18:09:21,391 DEBU
class Test
def test
puts "fdsfs"
end
end
<head>
<link href="/Content/theme/base/jquery.ui.all.css" rel="stylesheet"/>
<style type="text/css">
.ui-dialog .ui-dialog-content
{
position: relative;
border: 0;
padding: .5em 1em;
background: none;
2013-09-04 16:25:59,694 INFO [mondrian.olap.MondrianProperties] Mondrian: properties loaded from 'file:/home/solutions/auto_process_dev/saiku-server/tomcat/webapps/biserver-old/WEB-INF/classes/mondrian.properties'
2013-09-04 16:25:59,694 INFO [mondrian.olap.MondrianProperties] Mondrian: loaded 0 system properties
2013-09-04 16:25:59,747 DEBUG [mondrian.rolap.agg.SegmentCacheWorker] Segment cache initialized: mondrian.rolap.cache.MemorySegmentCache
2013-09-04 16:25:59,762 INFO [mondrian.rolap.RolapUtil] Mondrian: JDBC driver com.mysql.jdbc.Driver loaded successfully
2013-09-04 16:25:59,762 INFO [mondrian.rolap.RolapUtil] Mondrian: JDBC driver org.hsqldb.jdbcDriver loaded successfully
2013-09-04 16:25:59,774 DEBUG [mondrian.server.monitor] ConnectionStartEvent(0)
2013-09-04 16:25:59,775 DEBUG [mondrian.server.monitor] StatementStartEvent(0)
2013-09-04 16:25:59,779 DEBUG [mondrian.rolap.RolapSchemaPool] get: catalog=res:auto_process/auto_process.xml, connectionKey=jdbc:mysql://localhost/auto_process_dev{}, j
@ncouturier
ncouturier / gist:6437844
Created September 4, 2013 14:37
datasources
type=OLAP
name=auto_process
driver=mondrian.olap4j.MondrianOlap4jDriver
location=jdbc:mondrian:jdbc:mysql://localhost/auto_process_dev;Catalog=res:auto_process/auto_process.xml;JdbcDrivers=com.mysql.jdbc.Driver;DynamicSchemaProcessor= mondrian.i18n.LocalizingDynamicSchemaProcessor;Locale=en_US;
username=auto_process_dev
password=kQ7C9S2CCi
# some security configuration for roles, first enable it