los-cocos / cocos Goto Github PK
View Code? Open in Web Editor NEWgraphic library for games and multimedia, for python language on PC-like hardware
Home Page: http://los-cocos.github.io/cocos-site/
License: Other
graphic library for games and multimedia, for python language on PC-like hardware
Home Page: http://los-cocos.github.io/cocos-site/
License: Other
From [email protected] on April 21, 2008 18:25:10
Task:
Have an HTML cocos homepage that hosts at least these 2 documents:
API reference doc in HTML
Programmer Reference doc in HTML
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=34
From [email protected] on April 21, 2008 17:43:10
What steps will reproduce the problem? 1. Create a custom CocosNode object like MenuItem (cocos/menu.py)
2. Add that object to a layer
3. Let MenuItem execute an action... (nothing happens) What is the expected output? What do you see instead? The menuitem shall perform the action but MenuItem.transform() is not being
called. (To try this, uncomment line 333 of menu.py ) Please use labels and text to provide additional information.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=31
From [email protected] on March 28, 2008 18:54:14
What steps will reproduce the problem?
I'm using trunk.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=15
From [email protected] on April 26, 2008 11:28:43
What steps will reproduce the problem? 1. create layer that initializes some resources in on_enter()
2. in on_draw() it will draw those resources
3. in on_exit() it will free those expensive resources
4. Pause that layer... it will crash.
It will crash since those resources were freed in on_exit(), and the pause
layer will call it's on_draw() method.
This happened to me with Bruce's python interpreter.
Solution:
on_pause and on_resume different from on_enter / on_exit()
or on_exit() shall not be called on_pause()
or wont fix for 0.3 ?
or invalid, this is not a bug ?
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=48
From [email protected] on April 20, 2008 13:38:32
Provide sample shaders and the posibility to create your own.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=28
From [email protected] on March 16, 2008 16:03:21
What steps will reproduce the problem?
What is the expected output? What do you see instead?
Effects shall be placed in the correct place
This happens with fullscreen or resizing the window
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=7
From [email protected] on April 25, 2008 21:27:53
What steps will reproduce the problem? 1. run animated_main_menu.py
2. wait for any effect
3. the render remains in screen. What is the expected output? What do you see instead? see attached screenshot
it gives this warning:
"""Warning: using fallback texture grabber. Effects will treat layer
transparency as black"""
this is my gl_info.py output:
Platform instance is <pyglet.window.xlib.XlibPlatform object at 0x8333cac>
Display instance is <pyglet.window.xlib.XlibDisplayDevice object at 0x832abcc>
Screens:
XlibScreen(screen=0, x=0, y=0, width=1280, height=1024, xinerama=1)
Creating default context...
GL attributes:
double_buffer=1 stereo=0 buffer_size=32 aux_buffers=4 sample_buffers=0
samples=0 red_size=8 green_size=8 blue_size=8 alpha_size=0
depth_size=24 stencil_size=8 accum_red_size=16 accum_green_size=16
accum_blue_size=16 accum_alpha_size=16
GL version: 1.5.8 NVIDIA 96.39
GL vendor: NVIDIA Corporation
GL renderer: GeForce4 MX 440/AGP/SSE/3DNOW!
GL extensions:
GL_ARB_texture_compression GL_EXT_texture_cube_map GL_NV_point_sprite
GL_IBM_rasterpos_clip GL_EXT_clip_volume_hint
GL_NV_vertex_array_range2 GL_EXT_blend_color GL_EXT_blend_subtract
GL_NV_texgen_reflection GL_EXT_stencil_wrap GL_NV_fence
GL_EXT_texture_edge_clamp GL_EXT_vertex_array
GL_IBM_texture_mirrored_repeat GL_ARB_window_pos
GL_EXT_multi_draw_arrays GL_EXT_compiled_vertex_array
GL_ARB_vertex_program GL_EXT_texture_compression_s3tc
GL_ARB_texture_mirrored_repeat GL_EXT_point_parameters
GL_ARB_texture_env_dot3 GL_EXT_bgra GL_EXT_texture_lod
GL_NV_texture_env_combine4 GL_ARB_vertex_shader GL_KTX_buffer_region
GL_S3_s3tc GL_ARB_texture_env_combine GL_NV_vertex_program1_1
GL_ARB_point_sprite GL_ARB_vertex_buffer_object GL_EXT_rescale_normal
GL_NV_register_combiners GL_ARB_imaging GL_EXT_Cg_shader
GL_NV_texture_rectangle GL_EXT_gpu_program_parameters
GL_ARB_shader_objects GL_EXT_paletted_texture GL_NV_vertex_program
GL_EXT_texture_env_add GL_EXT_texture_object GL_ARB_multitexture
GL_NV_blend_square GL_EXT_secondary_color GL_EXT_texture_env_combine
GL_NV_pixel_data_range GL_ARB_texture_rectangle
GL_EXT_texture_lod_bias GL_NV_fog_distance GL_NV_vertex_array_range
GL_EXT_shared_texture_palette GL_SUN_slice_accum
GL_EXT_pixel_buffer_object GL_ARB_transpose_matrix GL_EXT_abgr
GL_EXT_separate_specular_color GL_ARB_shading_language_100
GL_ARB_texture_env_add GL_SGIS_generate_mipmap GL_EXT_fog_coord
GL_EXT_texture_filter_anisotropic GL_NV_light_max_exponent
GL_EXT_blend_minmax GL_SGIS_multitexture GL_ARB_texture_cube_map
GL_EXT_packed_pixels GL_SGIS_texture_lod GL_EXT_draw_range_elements
GL_ARB_pixel_buffer_object GL_NV_packed_depth_stencil
GL_ARB_point_parameters GL_EXT_texture_env_dot3
GLU version: 1.3
GLU extensions:
GLU_EXT_nurbs_tessellator GLU_EXT_object_space_tess
Context is XlibGLContext()
GLX is direct
GLX server vendor: NVIDIA Corporation
GLX server version: 1.3
GLX server extensions:
GLX_EXT_visual_info GLX_EXT_visual_rating GLX_SGIX_fbconfig
GLX_SGIX_pbuffer GLX_SGI_video_sync GLX_SGI_swap_control
GLX_EXT_texture_from_pixmap
GLX client vendor: NVIDIA Corporation
GLX client version: 1.4
GLX client extensions:
GLX_ARB_get_proc_address GLX_ARB_multisample GLX_EXT_visual_info
GLX_EXT_visual_rating GLX_EXT_import_context GLX_SGI_video_sync
GLX_NV_swap_group GLX_NV_video_out GLX_SGIX_fbconfig GLX_SGIX_pbuffer
GLX_SGI_swap_control GLX_NV_float_buffer GLX_ARB_fbconfig_float
GLX_EXT_fbconfig_packed_float GLX_EXT_texture_from_pixmap
GLX extensions:
GLX_EXT_visual_info GLX_EXT_visual_rating GLX_SGIX_fbconfig
GLX_SGIX_pbuffer GLX_SGI_video_sync GLX_SGI_swap_control
GLX_EXT_texture_from_pixmap GLX_ARB_get_proc_address
Attachment: screenshot-1209169437.png
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=46
From [email protected] on April 22, 2008 11:50:11
In menu.py, at line 415 ( commit af147ce ):
Can the forced colon be dropped from _get_label on MultipleMenuItem? Or at
least set by a keyword argument (i.e. __init__(..., separator=": ", ...).
It would be nice to have full control over the menu item presentation.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=37
From [email protected] on April 21, 2008 19:10:07
right now, on resize just changes the rendering to scale to whatever screen
you end up with. this results in some artifacts on drawing. we should
consider making some way scale things and use the full potential of the
current screen resolution. like, create a new font if the screen is bigger
or if we zoom on the text. this could go with resolution independent
drawing of primitives.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=36
From [email protected] on April 20, 2008 13:35:13
Circle, Line, Arc, segment, quad, etc.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=27
From [email protected] on April 17, 2008 06:02:29
create nodes for circle, arc, line, rect, quad, etc.
make pyglet compatible so we can later port them there.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=25
From [email protected] on March 21, 2008 15:24:33
This works:
from cocos.director import director
director.init()
But I want to just import "cocos", not pollute my namespace, and the
following does not work:
import cocos
cocos.director.director.init()
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=9
From [email protected] on March 26, 2008 04:01:46
When you run a test it should:
this will allow us to integrate with nose. (test discovery and running)
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=13
From [email protected] on April 13, 2008 19:47:14
In cocos.menus.Menu._drawTitle, line 136:
( http://code.google.com/p/los-cocos/source/browse/trunk/cocos/menu.py#136 )
pyglet.text.Label is called, but pyglet hasn't been imported.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=19
From [email protected] on April 21, 2008 08:38:20
What steps will reproduce the problem? 1. anchor for layers/scenes not working. What is the expected output? What do you see instead? shall be defined ASAP.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=30
From [email protected] on April 23, 2008 18:56:44
all nodes will be drawn after self.transform was called unless
"self.require_transform == False"
with this, you get expensive but easy transforms. but you can also do
things the pyglet way of changing the way you draw yourself based on your
attributes.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=40
From [email protected] on April 01, 2008 13:01:12
What steps will reproduce the problem?
Instead, I see this:
File "run_game.py", line 16, in <module>
main.main()
File "/Users/riq/progs/pywiic/trunk/lib/main.py", line 184, in main
rotdel = RandomDelay(5,10) + rot + RandomDelay(5,10)
File "/Users/riq/progs/pywiic/trunk/lib/cocos/actions.py", line 324, in
__add__
return Sequence(self, action)
File "/Users/riq/progs/pywiic/trunk/lib/cocos/actions.py", line 285, in
__init__
self.init(*args, **kwargs)
File "/Users/riq/progs/pywiic/trunk/lib/cocos/actions.py", line 941, in init
raise Exception("You can only sequence actions with finite duration,
not repeats or others like that")
Exception: You can only sequence actions with finite duration, not repeats
or others like that
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=18
From r1chardj0n3s on March 27, 2008 20:09:21
rjones@l-rjones:~/src/3rdparty/los-cocos/test$ python test_sprites.py
Traceback (most recent call last):
File "test_sprites.py", line 14, in <module>
from cocos.actions import *
AttributeError: 'module' object has no attribute 'Scale'
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=14
From [email protected] on March 16, 2008 12:11:04
What steps will reproduce the problem?
sprite.do( FadeOut() )
sprite.do( FadeIn() )
Please use labels and text to provide additional information.
this happens in 0.1.1 but works OK in trunk
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=6
From r1chardj0n3s on March 25, 2008 21:12:14
pyglet.app.exit()
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=12
From [email protected] on April 21, 2008 17:54:16
take the cocos presentation from pycon and make it work with 0.3 and add
all new effects.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=32
From [email protected] on April 24, 2008 04:14:37
Implement JumpTo
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=43
From [email protected] on March 21, 2008 15:27:35
In the wiki, main page, it should say that the API reference is not online,
but available for download.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=10
From [email protected] on April 21, 2008 18:52:22
we need to have a cocosnode that wraps text, label and/or textlayout.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=35
From [email protected] on April 24, 2008 08:10:35
to have the option to select between different 'effect' when you chose a
menu item, including the 'none' effect (shall be the default one).
possible effects:
. rotate effect (as in Robo-T2 game )
. None effect (default one)
. Zoom in effect
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=45
From [email protected] on April 26, 2008 11:34:34
implement transitions in cocos 0.3 using actions.
we have actions working in scenes, but the transition functionality is not
implemented.
discus how to implement them.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=50
From [email protected] on March 16, 2008 12:09:31
What steps will reproduce the problem?
spawn = Scale() | Rotate()
seq = spawn + Move()
sprite.do( seq )
Please use labels and text to provide additional information.
This happens on cocos 0.1.1 and trunk
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=5
From [email protected] on April 17, 2008 06:01:29
add position, opacity, etc attributes setup in sprite creation
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=24
From [email protected] on April 23, 2008 18:12:25
see samples/animated_main_menu.py
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=38
From [email protected] on April 15, 2008 15:30:47
What steps will reproduce the problem? 1. Sequence( RotateBy() + MoveBy() )
Inside RotateBy and MoveBy self.elapsed == None and self.done() is never
called.
self.elapsed is useful for some MeshActions and self.done() is necessary to
deactivate the mesh.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=21
From [email protected] on March 28, 2008 20:32:38
What steps will reproduce the problem?
Traceback (most recent call last):
File "test_sprites_without_cocos.py", line 52, in <module>
sprite.do( place + blink + bz*2 + fadeout + Repeat( fadein + rot + move
+ scale + move + rot) )
File "../cocos/actions.py", line 260, in __add__
return Sequence(self, action)
File "../cocos/actions.py", line 221, in __init__
self.init(*args, **kwargs)
File "../cocos/actions.py", line 812, in init
self.duration = self.one.duration + self.two.duration
AttributeError: 'Repeat' object has no attribute 'duration'
Expected:
Exception message shall be improved (or, if possible, support Repeats
inside a Sequence :)
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=16
From [email protected] on March 31, 2008 00:51:16
What steps will reproduce the problem? 1. executing font.add_directory(X) more than 1 time, for the same X What is the expected output? What do you see instead? Some warning it's what you expect.
Straight Core Dumped is what you get instead. What version of the product are you using? On what operating system? Cocos 0.1.0 with pyglet 1.0 Please provide any additional information below. Dumb error but it took minutes to figure out.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=17
From [email protected] on March 22, 2008 04:03:05
Each class/method/function which has an unit test that servers as an
example should have a link to the test from the documentation
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=11
From [email protected] on April 20, 2008 13:33:37
This can buy us:
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=26
From [email protected] on March 11, 2008 19:33:09
What steps will reproduce the problem? 1. run the attached code
2. stop it quickly
3. check the first lines of output What is the expected output? What do you see instead? I get:
Scene = <cocos.scene.Scene object at 0x8bea20c>
director.scene = None
director.scene = <cocos.scene.Scene object at 0x8bea20c>
director.scene = <cocos.scene.Scene object at 0x8bea20c>
...
I expected to get
Scene = <cocos.scene.Scene object at 0x8bea20c>
director.scene = <cocos.scene.Scene object at 0x8bea20c>
director.scene = <cocos.scene.Scene object at 0x8bea20c>
...
I didn't expect to have a call to step with director.scene = None; I have
an app where I need to access director.scene inside the step method and
fails in the first call to "step" because it still has not access to the
current scene and gets None instead.
Attachment: test_cocos.py
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=3
From [email protected] on April 26, 2008 10:59:05
What steps will reproduce the problem? 1. execute test/test_layer_rotate.py What is the expected output? What do you see instead? The layer shall rotate 360 degrees in 2 seconds
tested with commit 2507e9f
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=47
From [email protected] on April 17, 2008 05:59:58
write the tests and test batchnode
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=22
From [email protected] on March 01, 2008 18:20:44
What steps will reproduce the problem? 1. python2.5 test_effects.py What is the expected output? What do you see instead? what I get is:
{{{
ra@tachikoma:~/projects/los-cocos/test$ python2.5 test_effects.py
Mesa 7.0.1 implementation error: User called no-op dispatch function (an
unsupported extension function?)
Please report at bugzilla.freedesktop.org
Mesa 7.0.1 implementation error: User called no-op dispatch function (an
unsupported extension function?)
Please report at bugzilla.freedesktop.org
Mesa 7.0.1 implementation error: User called no-op dispatch function (an
unsupported extension function?)
Please report at bugzilla.freedesktop.org
Mesa 7.0.1 implementation error: User called no-op dispatch function (an
unsupported extension function?)
Please report at bugzilla.freedesktop.org
Traceback (most recent call last):
File "test_effects.py", line 94, in <module>
" Greenish hue, 65% opacity", ColorizeEffect(color=(0.5,1,0.5,0.65))),
File "../cocos/effect.py", line 81, in __init__
super (ColorizeEffect, self).__init__ ()
File "../cocos/effect.py", line 55, in __init__
self._grabber.grab (self.texture)
File "../cocos/framegrabber.py", line 96, in grab
self.fbuf.check_status()
File "../cocos/gl_framebuffer_object.py", line 42, in check_status
raise Exception ("Frambuffer not complete: %d" % status)
Exception: Frambuffer not complete: 0
}}}
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=1
From [email protected] on April 24, 2008 08:07:44
What steps will reproduce the problem? 1. Create a Grid3D action
2. execute it
3. change to fullscreen in the middle of the execution What is the expected output? What do you see instead? Fullscreen works ok.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=44
From [email protected] on March 13, 2008 15:52:18
Pasos para reproducir el problema:
El siguiente programa ejecuta 2 acciones en paralelo y las
interrumpe inmediatamente (para observar el problema):
import pyglet
from cocos.actions import *
window = pyglet.window.Window()
image = pyglet.resource.image('sprite.png')
sprite = ActionSprite(image, x=350, y=250)
sprite.do(Spawn(FadeIn(1), Delay(1)))
#identico a sprite.do(FadeIn(1) | Delay(1))
sprite.stop()
@window.event
def on_draw():
window.clear()
sprite.draw()
pyglet.app.run()
La excepción que notifica el intérprete es la siguiente:
Traceback (most recent call last):
File "test.py", line 18, in <module>
pyglet.app.run()
File "/usr/lib/python2.5/site-packages/pyglet/app/__init__.py", line 263,
in run
EventLoop().run()
File "/usr/lib/python2.5/site-packages/pyglet/app/xlib.py", line 91, in run
sleep_time = self.idle()
File "/usr/lib/python2.5/site-packages/pyglet/app/__init__.py", line 187,
in idle
dt = clock.tick(True)
File "/usr/lib/python2.5/site-packages/pyglet/clock.py", line 669, in tick
return _default.tick(poll)
File "/usr/lib/python2.5/site-packages/pyglet/clock.py", line 282, in tick
func(delta_t, *args, **kwargs)
File "/media/usb/src/cocos/cocos/actions.py", line 245, in step
self.actions.remove( x )
ValueError: list.remove(x): x not in list
El error solo se produce al utilizar acciones en paralelo, e
interrumpirlas en algún momento (no necesariamente de forma inmediata),
el fallo es casi aleatorio.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=4
From [email protected] on April 24, 2008 04:13:52
we have wrapped Label in a cocosnode, so maybe you could just make menu
take cocosnodes for its items, or if its a string, render the text.
this way, you do best practice and get free features.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=42
From [email protected] on April 26, 2008 11:30:38
Task:
write a game that shows how easy is to code a game in cocos.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=49
From r1chardj0n3s on April 15, 2008 00:37:30
The following patch replaces the use of pop_handlers with remove_handlers
to make Container.remove work (and does the same change elsewhere just in
case).
Can't commit directly to the repos 'cos Google Code has locked me out again.
Attachment: remove-handlers.patch
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=20
From [email protected] on April 23, 2008 18:13:03
pause not working
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=39
From [email protected] on March 21, 2008 15:03:32
What steps will reproduce the problem? 1. run test_transitions.py in a mac forcing GenericGrabber
2. run the same test using FBOGrabber
3. during these tests resize the window What is the expected output? What do you see instead? All grabbers shall capture & render the same size of framebuffer Please use labels and text to provide additional information.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=8
From [email protected] on April 21, 2008 18:02:14
add this to the action semantics.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=33
From [email protected] on March 10, 2008 15:44:36
Cuando concluye una acción el Sprite queda inactivo y
no es posible solicitarle que realice otra acción mediante
el método "do".
El siguiente programa desplaza la imagen "test.png" al punto
indicado por un click del mouse. Según el código la imágen debería
cambiar de posición cada vez que el usuario hace click, pero este
movimiento solo se realiza una sola vez. Si el movimiento concluye
ya no es posible indicarle que se desplace otra vez:
import pyglet
from cocos.actions import *
window = pyglet.window.Window()
image = pyglet.resource.image('test.png')
image.anchor_x = image.width / 2
image.anchor_y = image.height / 2
sprite = ActionSprite(image)
@window.event
def on_draw():
window.clear()
sprite.draw()
@window.event
def on_mouse_press(x, y, buttons, modifiers):
sprite.do(Goto((x, y), 1))
pyglet.app.run()
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=2
From [email protected] on April 23, 2008 20:24:56
What steps will reproduce the problem? 1. s = scene( layer1, layer2 )
2. s.do( grideffect ) 3. the effect is applied to the layer, but the 'black' color is no blended.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=41
From [email protected] on April 21, 2008 08:16:30
What steps will reproduce the problem? 1. edit cocos/actions/mesh_actions.py ( commit e98484c )
2. put a print '_' in GridBaseAction.stop
3. execute: test_waves3d.py What is the expected output? What do you see instead? you shall see: '_', but stop() is never called.
I didn't fix it because I don't know if cocosnodes shall call stop or not.
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=29
From [email protected] on April 17, 2008 06:00:35
rewrite tests for compatibility with cocosnodes
Original issue: http://code.google.com/p/los-cocos/issues/detail?id=23
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.